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.
- package/GDevelop/ExtLibs/7za.exe +0 -0
- package/GDevelop/ExtLibs/curl.exe +0 -0
- package/GDevelop/scripts/libgettextlib-0-17.dll +0 -0
- package/GDevelop/scripts/libgettextsrc-0-17.dll +0 -0
- package/LICENSE +1 -1
- package/dist/Runtime/AsyncTasksManager.js +5 -0
- package/dist/Runtime/AsyncTasksManager.js.map +7 -0
- package/dist/Runtime/Cordova/config.xml +44 -0
- package/dist/Runtime/Cordova/package.json +22 -0
- package/dist/Runtime/Cordova/www/index.html +45 -0
- package/dist/Runtime/CustomRuntimeObject.js +2 -0
- package/dist/Runtime/CustomRuntimeObject.js.map +7 -0
- package/dist/Runtime/CustomRuntimeObjectInstanceContainer.js +2 -0
- package/dist/Runtime/CustomRuntimeObjectInstanceContainer.js.map +7 -0
- package/dist/Runtime/Electron/main.js +65 -0
- package/dist/Runtime/Electron/package.json +26 -0
- package/dist/Runtime/Extensions/3D/A_RuntimeObject3D.js +2 -0
- package/dist/Runtime/Extensions/3D/A_RuntimeObject3D.js.map +7 -0
- package/dist/Runtime/Extensions/3D/A_RuntimeObject3DRenderer.js +2 -0
- package/dist/Runtime/Extensions/3D/A_RuntimeObject3DRenderer.js.map +7 -0
- package/dist/Runtime/Extensions/3D/AmbientLight.js +2 -0
- package/dist/Runtime/Extensions/3D/AmbientLight.js.map +7 -0
- package/dist/Runtime/Extensions/3D/Cube3DRuntimeObject.js +2 -0
- package/dist/Runtime/Extensions/3D/Cube3DRuntimeObject.js.map +7 -0
- package/dist/Runtime/Extensions/3D/Cube3DRuntimeObjectPixiRenderer.js +2 -0
- package/dist/Runtime/Extensions/3D/Cube3DRuntimeObjectPixiRenderer.js.map +7 -0
- package/dist/Runtime/Extensions/3D/DirectionalLight.js +2 -0
- package/dist/Runtime/Extensions/3D/DirectionalLight.js.map +7 -0
- package/dist/Runtime/Extensions/3D/ExponentialFog.js +2 -0
- package/dist/Runtime/Extensions/3D/ExponentialFog.js.map +7 -0
- package/dist/Runtime/Extensions/3D/HemisphereLight.js +2 -0
- package/dist/Runtime/Extensions/3D/HemisphereLight.js.map +7 -0
- package/dist/Runtime/Extensions/3D/JsExtension.js +2809 -0
- package/dist/Runtime/Extensions/3D/LinearFog.js +2 -0
- package/dist/Runtime/Extensions/3D/LinearFog.js.map +7 -0
- package/dist/Runtime/Extensions/3D/Model3DRuntimeObject.js +2 -0
- package/dist/Runtime/Extensions/3D/Model3DRuntimeObject.js.map +7 -0
- package/dist/Runtime/Extensions/3D/Model3DRuntimeObject3DRenderer.js +2 -0
- package/dist/Runtime/Extensions/3D/Model3DRuntimeObject3DRenderer.js.map +7 -0
- package/dist/Runtime/Extensions/3D/Scene3DTools.js +2 -0
- package/dist/Runtime/Extensions/3D/Scene3DTools.js.map +7 -0
- package/dist/Runtime/Extensions/AdMob/JsExtension.js +798 -0
- package/dist/Runtime/Extensions/AdMob/admobtools.js +2 -0
- package/dist/Runtime/Extensions/AdMob/admobtools.js.map +7 -0
- package/dist/Runtime/Extensions/AdvancedWindow/JsExtension.js +719 -0
- package/dist/Runtime/Extensions/AdvancedWindow/electron-advancedwindowtools.js +2 -0
- package/dist/Runtime/Extensions/AdvancedWindow/electron-advancedwindowtools.js.map +7 -0
- package/dist/Runtime/Extensions/AnchorBehavior/anchorruntimebehavior.js +2 -0
- package/dist/Runtime/Extensions/AnchorBehavior/anchorruntimebehavior.js.map +7 -0
- package/dist/Runtime/Extensions/BBText/JsExtension.js +639 -0
- package/dist/Runtime/Extensions/BBText/bbtextruntimeobject-pixi-renderer.js +2 -0
- package/dist/Runtime/Extensions/BBText/bbtextruntimeobject-pixi-renderer.js.map +7 -0
- package/dist/Runtime/Extensions/BBText/bbtextruntimeobject.js +2 -0
- package/dist/Runtime/Extensions/BBText/bbtextruntimeobject.js.map +7 -0
- package/dist/Runtime/Extensions/BBText/pixi-multistyle-text/dist/pixi-multistyle-text.umd.js +1 -0
- package/dist/Runtime/Extensions/BitmapText/JsExtension.js +756 -0
- package/dist/Runtime/Extensions/BitmapText/bitmaptextruntimeobject-pixi-renderer.js +2 -0
- package/dist/Runtime/Extensions/BitmapText/bitmaptextruntimeobject-pixi-renderer.js.map +7 -0
- package/dist/Runtime/Extensions/BitmapText/bitmaptextruntimeobject.js +2 -0
- package/dist/Runtime/Extensions/BitmapText/bitmaptextruntimeobject.js.map +7 -0
- package/dist/Runtime/Extensions/DebuggerTools/JsExtension.js +123 -0
- package/dist/Runtime/Extensions/DebuggerTools/debuggertools.js +2 -0
- package/dist/Runtime/Extensions/DebuggerTools/debuggertools.js.map +7 -0
- package/dist/Runtime/Extensions/DestroyOutsideBehavior/destroyoutsideruntimebehavior.js +2 -0
- package/dist/Runtime/Extensions/DestroyOutsideBehavior/destroyoutsideruntimebehavior.js.map +7 -0
- package/dist/Runtime/Extensions/DeviceSensors/JsExtension.js +461 -0
- package/dist/Runtime/Extensions/DeviceSensors/devicesensortools.js +2 -0
- package/dist/Runtime/Extensions/DeviceSensors/devicesensortools.js.map +7 -0
- package/dist/Runtime/Extensions/DeviceVibration/JsExtension.js +108 -0
- package/dist/Runtime/Extensions/DeviceVibration/devicevibrationtools.js +2 -0
- package/dist/Runtime/Extensions/DeviceVibration/devicevibrationtools.js.map +7 -0
- package/dist/Runtime/Extensions/DialogueTree/JsExtension.js +730 -0
- package/dist/Runtime/Extensions/DialogueTree/bondage.js/dist/bondage.min.js +11 -0
- package/dist/Runtime/Extensions/DialogueTree/dialoguetools.js +3 -0
- package/dist/Runtime/Extensions/DialogueTree/dialoguetools.js.map +7 -0
- package/dist/Runtime/Extensions/DraggableBehavior/draggableruntimebehavior.js +2 -0
- package/dist/Runtime/Extensions/DraggableBehavior/draggableruntimebehavior.js.map +7 -0
- package/dist/Runtime/Extensions/Effects/JsExtension.js +1197 -0
- package/dist/Runtime/Extensions/Effects/adjustment-pixi-filter.js +2 -0
- package/dist/Runtime/Extensions/Effects/adjustment-pixi-filter.js.map +7 -0
- package/dist/Runtime/Extensions/Effects/advanced-bloom-pixi-filter.js +2 -0
- package/dist/Runtime/Extensions/Effects/advanced-bloom-pixi-filter.js.map +7 -0
- package/dist/Runtime/Extensions/Effects/ascii-pixi-filter.js +2 -0
- package/dist/Runtime/Extensions/Effects/ascii-pixi-filter.js.map +7 -0
- package/dist/Runtime/Extensions/Effects/bevel-pixi-filter.js +2 -0
- package/dist/Runtime/Extensions/Effects/bevel-pixi-filter.js.map +7 -0
- package/dist/Runtime/Extensions/Effects/black-and-white-pixi-filter.js +2 -0
- package/dist/Runtime/Extensions/Effects/black-and-white-pixi-filter.js.map +7 -0
- package/dist/Runtime/Extensions/Effects/blending-mode-pixi-filter.js +2 -0
- package/dist/Runtime/Extensions/Effects/blending-mode-pixi-filter.js.map +7 -0
- package/dist/Runtime/Extensions/Effects/blur-pixi-filter.js +2 -0
- package/dist/Runtime/Extensions/Effects/blur-pixi-filter.js.map +7 -0
- package/dist/Runtime/Extensions/Effects/brightness-pixi-filter.js +2 -0
- package/dist/Runtime/Extensions/Effects/brightness-pixi-filter.js.map +7 -0
- package/dist/Runtime/Extensions/Effects/bulge-pinch-pixi-filter.js +2 -0
- package/dist/Runtime/Extensions/Effects/bulge-pinch-pixi-filter.js.map +7 -0
- package/dist/Runtime/Extensions/Effects/color-map-pixi-filter.js +2 -0
- package/dist/Runtime/Extensions/Effects/color-map-pixi-filter.js.map +7 -0
- package/dist/Runtime/Extensions/Effects/color-replace-pixi-filter.js +2 -0
- package/dist/Runtime/Extensions/Effects/color-replace-pixi-filter.js.map +7 -0
- package/dist/Runtime/Extensions/Effects/crt-pixi-filter.js +2 -0
- package/dist/Runtime/Extensions/Effects/crt-pixi-filter.js.map +7 -0
- package/dist/Runtime/Extensions/Effects/displacement-pixi-filter.js +2 -0
- package/dist/Runtime/Extensions/Effects/displacement-pixi-filter.js.map +7 -0
- package/dist/Runtime/Extensions/Effects/dot-pixi-filter.js +2 -0
- package/dist/Runtime/Extensions/Effects/dot-pixi-filter.js.map +7 -0
- package/dist/Runtime/Extensions/Effects/drop-shadow-pixi-filter.js +2 -0
- package/dist/Runtime/Extensions/Effects/drop-shadow-pixi-filter.js.map +7 -0
- package/dist/Runtime/Extensions/Effects/glitch-pixi-filter.js +2 -0
- package/dist/Runtime/Extensions/Effects/glitch-pixi-filter.js.map +7 -0
- package/dist/Runtime/Extensions/Effects/glow-pixi-filter.js +2 -0
- package/dist/Runtime/Extensions/Effects/glow-pixi-filter.js.map +7 -0
- package/dist/Runtime/Extensions/Effects/godray-pixi-filter.js +2 -0
- package/dist/Runtime/Extensions/Effects/godray-pixi-filter.js.map +7 -0
- package/dist/Runtime/Extensions/Effects/kawase-blur-pixi-filter.js +2 -0
- package/dist/Runtime/Extensions/Effects/kawase-blur-pixi-filter.js.map +7 -0
- package/dist/Runtime/Extensions/Effects/light-night-pixi-filter.js +3 -0
- package/dist/Runtime/Extensions/Effects/light-night-pixi-filter.js.map +7 -0
- package/dist/Runtime/Extensions/Effects/night-pixi-filter.js +3 -0
- package/dist/Runtime/Extensions/Effects/night-pixi-filter.js.map +7 -0
- package/dist/Runtime/Extensions/Effects/noise-pixi-filter.js +2 -0
- package/dist/Runtime/Extensions/Effects/noise-pixi-filter.js.map +7 -0
- package/dist/Runtime/Extensions/Effects/old-film-pixi-filter.js +2 -0
- package/dist/Runtime/Extensions/Effects/old-film-pixi-filter.js.map +7 -0
- package/dist/Runtime/Extensions/Effects/outline-pixi-filter.js +2 -0
- package/dist/Runtime/Extensions/Effects/outline-pixi-filter.js.map +7 -0
- package/dist/Runtime/Extensions/Effects/pixelate-pixi-filter.js +2 -0
- package/dist/Runtime/Extensions/Effects/pixelate-pixi-filter.js.map +7 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/filter-adjustment.js +8 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/filter-advanced-bloom.js +8 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/filter-ascii.js +8 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/filter-bevel.js +8 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/filter-bulge-pinch.js +8 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/filter-color-map.js +8 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/filter-color-replace.js +8 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/filter-crt.js +8 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/filter-dot.js +8 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/filter-drop-shadow.js +8 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/filter-glitch.js +8 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/filter-glow.js +8 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/filter-godray.js +8 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/filter-kawase-blur.js +8 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/filter-old-film.js +8 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/filter-outline.js +8 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/filter-pixelate.js +8 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/filter-radial-blur.js +8 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/filter-reflection.js +8 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/filter-rgb-split.js +8 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/filter-tilt-shift.js +171 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/filter-twist.js +8 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/filter-zoom-blur.js +8 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/types/adjustment/types.d.ts +29 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/types/advanced-bloom/types.d.ts +30 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/types/ascii/types.d.ts +11 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/types/bevel/types.d.ts +25 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/types/bloom/types.d.ts +18 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/types/bulge-pinch/types.d.ts +24 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/types/color-map/types.d.ts +22 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/types/color-overlay/types.d.ts +11 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/types/color-replace/types.d.ts +17 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/types/convolution/types.d.ts +13 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/types/cross-hatch/types.d.ts +10 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/types/crt/types.d.ts +35 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/types/dot/types.d.ts +12 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/types/drop-shadow/types.d.ts +33 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/types/emboss/types.d.ts +11 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/types/glitch/types.d.ts +38 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/types/glow/types.d.ts +23 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/types/godray/types.d.ts +27 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/types/kawase-blur/types.d.ts +15 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/types/motion-blur/types.d.ts +17 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/types/multi-color-replace/types.d.ts +18 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/types/old-film/types.d.ts +33 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/types/outline/types.d.ts +13 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/types/pixelate/types.d.ts +11 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/types/radial-blur/types.d.ts +19 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/types/reflection/types.d.ts +25 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/types/rgb-split/types.d.ts +13 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/types/shockwave/types.d.ts +25 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/types/simple-lightmap/types.d.ts +13 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/types/tilt-shift/types.d.ts +19 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/types/twist/types.d.ts +13 -0
- package/dist/Runtime/Extensions/Effects/pixi-filters/types/zoom-blur/types.d.ts +28 -0
- package/dist/Runtime/Extensions/Effects/radial-blur-pixi-filter.js +2 -0
- package/dist/Runtime/Extensions/Effects/radial-blur-pixi-filter.js.map +7 -0
- package/dist/Runtime/Extensions/Effects/reflection-pixi-filter.js +2 -0
- package/dist/Runtime/Extensions/Effects/reflection-pixi-filter.js.map +7 -0
- package/dist/Runtime/Extensions/Effects/rgb-split-pixi-filter.js +2 -0
- package/dist/Runtime/Extensions/Effects/rgb-split-pixi-filter.js.map +7 -0
- package/dist/Runtime/Extensions/Effects/sepia-pixi-filter.js +2 -0
- package/dist/Runtime/Extensions/Effects/sepia-pixi-filter.js.map +7 -0
- package/dist/Runtime/Extensions/Effects/tilt-shift-pixi-filter.js +2 -0
- package/dist/Runtime/Extensions/Effects/tilt-shift-pixi-filter.js.map +7 -0
- package/dist/Runtime/Extensions/Effects/twist-pixi-filter.js +2 -0
- package/dist/Runtime/Extensions/Effects/twist-pixi-filter.js.map +7 -0
- package/dist/Runtime/Extensions/Effects/zoom-blur-pixi-filter.js +2 -0
- package/dist/Runtime/Extensions/Effects/zoom-blur-pixi-filter.js.map +7 -0
- package/dist/Runtime/Extensions/ExampleJsExtension/JsExtension.js +589 -0
- package/dist/Runtime/Extensions/ExampleJsExtension/dummyeffect.js +3 -0
- package/dist/Runtime/Extensions/ExampleJsExtension/dummyeffect.js.map +7 -0
- package/dist/Runtime/Extensions/ExampleJsExtension/dummyruntimebehavior.js +2 -0
- package/dist/Runtime/Extensions/ExampleJsExtension/dummyruntimebehavior.js.map +7 -0
- package/dist/Runtime/Extensions/ExampleJsExtension/dummyruntimeobject-pixi-renderer.js +2 -0
- package/dist/Runtime/Extensions/ExampleJsExtension/dummyruntimeobject-pixi-renderer.js.map +7 -0
- package/dist/Runtime/Extensions/ExampleJsExtension/dummyruntimeobject.js +2 -0
- package/dist/Runtime/Extensions/ExampleJsExtension/dummyruntimeobject.js.map +7 -0
- package/dist/Runtime/Extensions/ExampleJsExtension/dummywithshareddataruntimebehavior.js +2 -0
- package/dist/Runtime/Extensions/ExampleJsExtension/dummywithshareddataruntimebehavior.js.map +7 -0
- package/dist/Runtime/Extensions/ExampleJsExtension/examplejsextensiontools.js +2 -0
- package/dist/Runtime/Extensions/ExampleJsExtension/examplejsextensiontools.js.map +7 -0
- package/dist/Runtime/Extensions/FacebookInstantGames/FBInstant.d.ts +2 -0
- package/dist/Runtime/Extensions/FacebookInstantGames/JsExtension.js +379 -0
- package/dist/Runtime/Extensions/FacebookInstantGames/facebookinstantgamestools.js +2 -0
- package/dist/Runtime/Extensions/FacebookInstantGames/facebookinstantgamestools.js.map +7 -0
- package/dist/Runtime/Extensions/FileSystem/JsExtension.js +559 -0
- package/dist/Runtime/Extensions/FileSystem/filesystemtools.js +2 -0
- package/dist/Runtime/Extensions/FileSystem/filesystemtools.js.map +7 -0
- package/dist/Runtime/Extensions/Firebase/A_firebasejs/A_firebase-base.js +2 -0
- package/dist/Runtime/Extensions/Firebase/A_firebasejs/A_firebase-base.js.map +1 -0
- package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-analytics.js +2 -0
- package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-analytics.js.map +1 -0
- package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-auth.js +2 -0
- package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-auth.js.map +1 -0
- package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-database.js +2 -0
- package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-database.js.map +1 -0
- package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-firestore.js +2 -0
- package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-firestore.js.map +1 -0
- package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-functions.js +2 -0
- package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-functions.js.map +1 -0
- package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-messaging.js +2 -0
- package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-messaging.js.map +1 -0
- package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-performance.js +2 -0
- package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-performance.js.map +1 -0
- package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-remote-config.js +2 -0
- package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-remote-config.js.map +1 -0
- package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-storage.js +2 -0
- package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-storage.js.map +1 -0
- package/dist/Runtime/Extensions/Firebase/A_firebasejs/firebase.d.ts +10191 -0
- package/dist/Runtime/Extensions/Firebase/B_firebasetools/C_firebasetools.js +2 -0
- package/dist/Runtime/Extensions/Firebase/B_firebasetools/C_firebasetools.js.map +7 -0
- package/dist/Runtime/Extensions/Firebase/B_firebasetools/D_analyticstools.js +2 -0
- package/dist/Runtime/Extensions/Firebase/B_firebasetools/D_analyticstools.js.map +7 -0
- package/dist/Runtime/Extensions/Firebase/B_firebasetools/D_authtools.js +2 -0
- package/dist/Runtime/Extensions/Firebase/B_firebasetools/D_authtools.js.map +7 -0
- package/dist/Runtime/Extensions/Firebase/B_firebasetools/D_cloudfirestoretools.js +2 -0
- package/dist/Runtime/Extensions/Firebase/B_firebasetools/D_cloudfirestoretools.js.map +7 -0
- package/dist/Runtime/Extensions/Firebase/B_firebasetools/D_databasetools.js +2 -0
- package/dist/Runtime/Extensions/Firebase/B_firebasetools/D_databasetools.js.map +7 -0
- package/dist/Runtime/Extensions/Firebase/B_firebasetools/D_functionstools.js +2 -0
- package/dist/Runtime/Extensions/Firebase/B_firebasetools/D_functionstools.js.map +7 -0
- package/dist/Runtime/Extensions/Firebase/B_firebasetools/D_performancetools.js +2 -0
- package/dist/Runtime/Extensions/Firebase/B_firebasetools/D_performancetools.js.map +7 -0
- package/dist/Runtime/Extensions/Firebase/B_firebasetools/D_remoteconfigtools.js +2 -0
- package/dist/Runtime/Extensions/Firebase/B_firebasetools/D_remoteconfigtools.js.map +7 -0
- package/dist/Runtime/Extensions/Firebase/B_firebasetools/D_storagetools.js +2 -0
- package/dist/Runtime/Extensions/Firebase/B_firebasetools/D_storagetools.js.map +7 -0
- package/dist/Runtime/Extensions/Firebase/JsExtension.js +2323 -0
- package/dist/Runtime/Extensions/Inventory/inventory.js +2 -0
- package/dist/Runtime/Extensions/Inventory/inventory.js.map +7 -0
- package/dist/Runtime/Extensions/Inventory/inventorytools.js +2 -0
- package/dist/Runtime/Extensions/Inventory/inventorytools.js.map +7 -0
- package/dist/Runtime/Extensions/JsExtensionTypes.flow.js +34 -0
- package/dist/Runtime/Extensions/Leaderboards/JsExtension.js +299 -0
- package/dist/Runtime/Extensions/Leaderboards/leaderboardstools.js +2 -0
- package/dist/Runtime/Extensions/Leaderboards/leaderboardstools.js.map +7 -0
- package/dist/Runtime/Extensions/Leaderboards/sha256.d.ts +234 -0
- package/dist/Runtime/Extensions/Leaderboards/sha256.js +21 -0
- package/dist/Runtime/Extensions/Lighting/JsExtension.js +371 -0
- package/dist/Runtime/Extensions/Lighting/lightobstacleruntimebehavior.js +2 -0
- package/dist/Runtime/Extensions/Lighting/lightobstacleruntimebehavior.js.map +7 -0
- package/dist/Runtime/Extensions/Lighting/lightruntimeobject-pixi-renderer.js +40 -0
- package/dist/Runtime/Extensions/Lighting/lightruntimeobject-pixi-renderer.js.map +7 -0
- package/dist/Runtime/Extensions/Lighting/lightruntimeobject.js +2 -0
- package/dist/Runtime/Extensions/Lighting/lightruntimeobject.js.map +7 -0
- package/dist/Runtime/Extensions/LinkedObjects/linkedobjects.js +2 -0
- package/dist/Runtime/Extensions/LinkedObjects/linkedobjects.js.map +7 -0
- package/dist/Runtime/Extensions/P2P/A_peer.js +4 -0
- package/dist/Runtime/Extensions/P2P/A_peer.js.map +1 -0
- package/dist/Runtime/Extensions/P2P/B_p2ptools.js +2 -0
- package/dist/Runtime/Extensions/P2P/B_p2ptools.js.map +7 -0
- package/dist/Runtime/Extensions/P2P/JsExtension.js +483 -0
- package/dist/Runtime/Extensions/P2P/peerjs.d.ts +509 -0
- package/dist/Runtime/Extensions/PanelSpriteObject/panelspriteruntimeobject-pixi-renderer.js +2 -0
- package/dist/Runtime/Extensions/PanelSpriteObject/panelspriteruntimeobject-pixi-renderer.js.map +7 -0
- package/dist/Runtime/Extensions/PanelSpriteObject/panelspriteruntimeobject.js +2 -0
- package/dist/Runtime/Extensions/PanelSpriteObject/panelspriteruntimeobject.js.map +7 -0
- package/dist/Runtime/Extensions/ParticleSystem/particleemitterobject-pixi-renderer.js +2 -0
- package/dist/Runtime/Extensions/ParticleSystem/particleemitterobject-pixi-renderer.js.map +7 -0
- package/dist/Runtime/Extensions/ParticleSystem/particleemitterobject.js +2 -0
- package/dist/Runtime/Extensions/ParticleSystem/particleemitterobject.js.map +7 -0
- package/dist/Runtime/Extensions/ParticleSystem/pixi-particles-pixi-renderer.min.js +3 -0
- package/dist/Runtime/Extensions/PathfindingBehavior/PathTools.js +2 -0
- package/dist/Runtime/Extensions/PathfindingBehavior/PathTools.js.map +7 -0
- package/dist/Runtime/Extensions/PathfindingBehavior/pathfindingobstacleruntimebehavior.js +2 -0
- package/dist/Runtime/Extensions/PathfindingBehavior/pathfindingobstacleruntimebehavior.js.map +7 -0
- package/dist/Runtime/Extensions/PathfindingBehavior/pathfindingruntimebehavior.js +2 -0
- package/dist/Runtime/Extensions/PathfindingBehavior/pathfindingruntimebehavior.js.map +7 -0
- package/dist/Runtime/Extensions/Physics2Behavior/Box2D_v2.3.1_min.wasm.js +2 -0
- package/dist/Runtime/Extensions/Physics2Behavior/Box2D_v2.3.1_min.wasm.js.map +7 -0
- package/dist/Runtime/Extensions/Physics2Behavior/Box2D_v2.3.1_min.wasm.wasm +0 -0
- package/dist/Runtime/Extensions/Physics2Behavior/JsExtension.js +4072 -0
- package/dist/Runtime/Extensions/Physics2Behavior/box2d.d.ts +1804 -0
- package/dist/Runtime/Extensions/Physics2Behavior/physics2runtimebehavior.js +2 -0
- package/dist/Runtime/Extensions/Physics2Behavior/physics2runtimebehavior.js.map +7 -0
- package/dist/Runtime/Extensions/Physics2Behavior/physics2tools.js +2 -0
- package/dist/Runtime/Extensions/Physics2Behavior/physics2tools.js.map +7 -0
- package/dist/Runtime/Extensions/PhysicsBehavior/box2djs/box2d.js +804 -0
- package/dist/Runtime/Extensions/PhysicsBehavior/physicsruntimebehavior.js +2 -0
- package/dist/Runtime/Extensions/PhysicsBehavior/physicsruntimebehavior.js.map +7 -0
- package/dist/Runtime/Extensions/PlatformBehavior/benchmarks/platformerobjectruntimebehavior.benchmark.js +2 -0
- package/dist/Runtime/Extensions/PlatformBehavior/benchmarks/platformerobjectruntimebehavior.benchmark.js.map +7 -0
- package/dist/Runtime/Extensions/PlatformBehavior/platformerobjectruntimebehavior.js +2 -0
- package/dist/Runtime/Extensions/PlatformBehavior/platformerobjectruntimebehavior.js.map +7 -0
- package/dist/Runtime/Extensions/PlatformBehavior/platformruntimebehavior.js +2 -0
- package/dist/Runtime/Extensions/PlatformBehavior/platformruntimebehavior.js.map +7 -0
- package/dist/Runtime/Extensions/PlatformBehavior/platformtools.js +2 -0
- package/dist/Runtime/Extensions/PlatformBehavior/platformtools.js.map +7 -0
- package/dist/Runtime/Extensions/PlayerAuthentication/JsExtension.js +218 -0
- package/dist/Runtime/Extensions/PlayerAuthentication/playerauthenticationcomponents.js +5 -0
- package/dist/Runtime/Extensions/PlayerAuthentication/playerauthenticationcomponents.js.map +7 -0
- package/dist/Runtime/Extensions/PlayerAuthentication/playerauthenticationtools.js +2 -0
- package/dist/Runtime/Extensions/PlayerAuthentication/playerauthenticationtools.js.map +7 -0
- package/dist/Runtime/Extensions/PrimitiveDrawing/pixi-graphics-extras/graphics-extras.min.js +10 -0
- package/dist/Runtime/Extensions/PrimitiveDrawing/pixi-graphics-extras/graphics-extras.min.js.map +1 -0
- package/dist/Runtime/Extensions/PrimitiveDrawing/shapepainterruntimeobject-pixi-renderer.js +2 -0
- package/dist/Runtime/Extensions/PrimitiveDrawing/shapepainterruntimeobject-pixi-renderer.js.map +7 -0
- package/dist/Runtime/Extensions/PrimitiveDrawing/shapepainterruntimeobject.js +2 -0
- package/dist/Runtime/Extensions/PrimitiveDrawing/shapepainterruntimeobject.js.map +7 -0
- package/dist/Runtime/Extensions/Screenshot/JsExtension.js +68 -0
- package/dist/Runtime/Extensions/Screenshot/screenshottools.js +2 -0
- package/dist/Runtime/Extensions/Screenshot/screenshottools.js.map +7 -0
- package/dist/Runtime/Extensions/Shopify/shopify-buy.umd.polyfilled.min.js +2 -0
- package/dist/Runtime/Extensions/Shopify/shopifytools.js +2 -0
- package/dist/Runtime/Extensions/Shopify/shopifytools.js.map +7 -0
- package/dist/Runtime/Extensions/SpatialSound/JsExtension.js +92 -0
- package/dist/Runtime/Extensions/SpatialSound/howler.spatial.min.js +2 -0
- package/dist/Runtime/Extensions/SpatialSound/spatialsoundtools.js +2 -0
- package/dist/Runtime/Extensions/SpatialSound/spatialsoundtools.js.map +7 -0
- package/dist/Runtime/Extensions/SystemInfo/systeminfotools.js +2 -0
- package/dist/Runtime/Extensions/SystemInfo/systeminfotools.js.map +7 -0
- package/dist/Runtime/Extensions/TextEntryObject/textentryruntimeobject-pixi-renderer.js +2 -0
- package/dist/Runtime/Extensions/TextEntryObject/textentryruntimeobject-pixi-renderer.js.map +7 -0
- package/dist/Runtime/Extensions/TextEntryObject/textentryruntimeobject.js +2 -0
- package/dist/Runtime/Extensions/TextEntryObject/textentryruntimeobject.js.map +7 -0
- package/dist/Runtime/Extensions/TextInput/JsExtension.js +790 -0
- package/dist/Runtime/Extensions/TextInput/textinputruntimeobject-pixi-renderer.js +2 -0
- package/dist/Runtime/Extensions/TextInput/textinputruntimeobject-pixi-renderer.js.map +7 -0
- package/dist/Runtime/Extensions/TextInput/textinputruntimeobject.js +2 -0
- package/dist/Runtime/Extensions/TextInput/textinputruntimeobject.js.map +7 -0
- package/dist/Runtime/Extensions/TextObject/textruntimeobject-pixi-renderer.js +2 -0
- package/dist/Runtime/Extensions/TextObject/textruntimeobject-pixi-renderer.js.map +7 -0
- package/dist/Runtime/Extensions/TextObject/textruntimeobject.js +2 -0
- package/dist/Runtime/Extensions/TextObject/textruntimeobject.js.map +7 -0
- package/dist/Runtime/Extensions/TileMap/JsExtension.js +1653 -0
- package/dist/Runtime/Extensions/TileMap/TileMapRuntimeManager.js +2 -0
- package/dist/Runtime/Extensions/TileMap/TileMapRuntimeManager.js.map +7 -0
- package/dist/Runtime/Extensions/TileMap/collision/TileMapCollisionMaskRenderer.js +2 -0
- package/dist/Runtime/Extensions/TileMap/collision/TileMapCollisionMaskRenderer.js.map +7 -0
- package/dist/Runtime/Extensions/TileMap/collision/TransformedTileMap.js +2 -0
- package/dist/Runtime/Extensions/TileMap/collision/TransformedTileMap.js.map +7 -0
- package/dist/Runtime/Extensions/TileMap/example/anotherIsland.json +5769 -0
- package/dist/Runtime/Extensions/TileMap/example/island.json +5823 -0
- package/dist/Runtime/Extensions/TileMap/helper/TileMapHelper.d.ts +25 -0
- package/dist/Runtime/Extensions/TileMap/helper/TileMapHelper.js +2 -0
- package/dist/Runtime/Extensions/TileMap/helper/TileMapHelper.js.map +7 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/index.d.ts +16 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/index.d.ts.map +1 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/load/TileMapFileContent.d.ts +12 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/load/TileMapFileContent.d.ts.map +1 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/load/TileMapLoader.d.ts +18 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/load/TileMapLoader.d.ts.map +1 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/load/ldtk/LDtkFormat.d.ts +589 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/load/ldtk/LDtkFormat.d.ts.map +1 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/load/ldtk/LDtkTileMapLoader.d.ts +16 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/load/ldtk/LDtkTileMapLoader.d.ts.map +1 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/load/ldtk/LDtkTileMapLoaderHelper.d.ts +5 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/load/ldtk/LDtkTileMapLoaderHelper.d.ts.map +1 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/load/tiled/TiledFormat.d.ts +343 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/load/tiled/TiledFormat.d.ts.map +1 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/load/tiled/TiledTileMapLoader.d.ts +16 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/load/tiled/TiledTileMapLoader.d.ts.map +1 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/load/tiled/TiledTileMapLoader.spec.d.ts +2 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/load/tiled/TiledTileMapLoader.spec.d.ts.map +1 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/load/tiled/TiledTileMapLoaderHelper.d.ts +37 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/load/tiled/TiledTileMapLoaderHelper.d.ts.map +1 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/model/CommonTypes.d.ts +5 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/model/CommonTypes.d.ts.map +1 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/model/GID.d.ts +45 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/model/GID.d.ts.map +1 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/model/TileMapModel.d.ts +361 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/model/TileMapModel.d.ts.map +1 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/render/ResourceCache.d.ts +27 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/render/ResourceCache.d.ts.map +1 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/render/TileMapManager.d.ts +70 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/render/TileMapManager.d.ts.map +1 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/render/TileMapPixiHelper.d.ts +56 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/render/TileMapPixiHelper.d.ts.map +1 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/render/TileTextureCache.d.ts +24 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/render/TileTextureCache.d.ts.map +1 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/render/ldtk/LDtkPixiHelper.d.ts +26 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/render/ldtk/LDtkPixiHelper.d.ts.map +1 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/render/tiled/TiledPixiHelper.d.ts +21 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/render/tiled/TiledPixiHelper.d.ts.map +1 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/types/index.d.ts +12 -0
- package/dist/Runtime/Extensions/TileMap/helper/dts/types/index.d.ts.map +1 -0
- package/dist/Runtime/Extensions/TileMap/pako/dist/pako.d.ts +166 -0
- package/dist/Runtime/Extensions/TileMap/pako/dist/pako.min.js +2 -0
- package/dist/Runtime/Extensions/TileMap/pixi-tilemap/dist/global-pixi-tilemap.d.ts +23 -0
- package/dist/Runtime/Extensions/TileMap/pixi-tilemap/dist/pixi-tilemap.d.ts +270 -0
- package/dist/Runtime/Extensions/TileMap/pixi-tilemap/dist/pixi-tilemap.umd.js +74 -0
- package/dist/Runtime/Extensions/TileMap/pixi-tilemap/dist/pixi-tilemap.umd.js.map +7 -0
- package/dist/Runtime/Extensions/TileMap/tilemapcollisionmaskruntimeobject.js +2 -0
- package/dist/Runtime/Extensions/TileMap/tilemapcollisionmaskruntimeobject.js.map +7 -0
- package/dist/Runtime/Extensions/TileMap/tilemapruntimeobject-pixi-renderer.js +2 -0
- package/dist/Runtime/Extensions/TileMap/tilemapruntimeobject-pixi-renderer.js.map +7 -0
- package/dist/Runtime/Extensions/TileMap/tilemapruntimeobject.js +2 -0
- package/dist/Runtime/Extensions/TileMap/tilemapruntimeobject.js.map +7 -0
- package/dist/Runtime/Extensions/TiledSpriteObject/tiledspriteruntimeobject-pixi-renderer.js +2 -0
- package/dist/Runtime/Extensions/TiledSpriteObject/tiledspriteruntimeobject-pixi-renderer.js.map +7 -0
- package/dist/Runtime/Extensions/TiledSpriteObject/tiledspriteruntimeobject.js +2 -0
- package/dist/Runtime/Extensions/TiledSpriteObject/tiledspriteruntimeobject.js.map +7 -0
- package/dist/Runtime/Extensions/TopDownMovementBehavior/topdownmovementruntimebehavior.js +2 -0
- package/dist/Runtime/Extensions/TopDownMovementBehavior/topdownmovementruntimebehavior.js.map +7 -0
- package/dist/Runtime/Extensions/TweenBehavior/JsExtension.js +1087 -0
- package/dist/Runtime/Extensions/TweenBehavior/shifty.d.ts +839 -0
- package/dist/Runtime/Extensions/TweenBehavior/shifty.js +5 -0
- package/dist/Runtime/Extensions/TweenBehavior/shifty.js.map +1 -0
- package/dist/Runtime/Extensions/TweenBehavior/shifty_setup.js +2 -0
- package/dist/Runtime/Extensions/TweenBehavior/shifty_setup.js.map +7 -0
- package/dist/Runtime/Extensions/TweenBehavior/tweenruntimebehavior.js +2 -0
- package/dist/Runtime/Extensions/TweenBehavior/tweenruntimebehavior.js.map +7 -0
- package/dist/Runtime/Extensions/TweenBehavior/tweentools.js +2 -0
- package/dist/Runtime/Extensions/TweenBehavior/tweentools.js.map +7 -0
- package/dist/Runtime/Extensions/Video/JsExtension.js +694 -0
- package/dist/Runtime/Extensions/Video/videoruntimeobject-pixi-renderer.js +2 -0
- package/dist/Runtime/Extensions/Video/videoruntimeobject-pixi-renderer.js.map +7 -0
- package/dist/Runtime/Extensions/Video/videoruntimeobject.js +2 -0
- package/dist/Runtime/Extensions/Video/videoruntimeobject.js.map +7 -0
- package/dist/Runtime/FacebookInstantGames/fbapp-config.json +17 -0
- package/dist/Runtime/FacebookInstantGames/index.html +68 -0
- package/dist/Runtime/Model3DManager.js +2 -0
- package/dist/Runtime/Model3DManager.js.map +7 -0
- package/dist/Runtime/RuntimeCustomObjectLayer.js +2 -0
- package/dist/Runtime/RuntimeCustomObjectLayer.js.map +7 -0
- package/dist/Runtime/RuntimeInstanceContainer.js +2 -0
- package/dist/Runtime/RuntimeInstanceContainer.js.map +7 -0
- package/dist/Runtime/RuntimeLayer.js +2 -0
- package/dist/Runtime/RuntimeLayer.js.map +7 -0
- package/dist/Runtime/affinetransformation.js +2 -0
- package/dist/Runtime/affinetransformation.js.map +7 -0
- package/dist/Runtime/debugger-client/abstract-debugger-client.js +2 -0
- package/dist/Runtime/debugger-client/abstract-debugger-client.js.map +7 -0
- package/dist/Runtime/debugger-client/hot-reloader.js +2 -0
- package/dist/Runtime/debugger-client/hot-reloader.js.map +7 -0
- package/dist/Runtime/debugger-client/websocket-debugger-client.js +2 -0
- package/dist/Runtime/debugger-client/websocket-debugger-client.js.map +7 -0
- package/dist/Runtime/debugger-client/window-message-debugger-client.js +2 -0
- package/dist/Runtime/debugger-client/window-message-debugger-client.js.map +7 -0
- package/dist/Runtime/events-tools/cameratools.js +2 -0
- package/dist/Runtime/events-tools/cameratools.js.map +7 -0
- package/dist/Runtime/events-tools/commontools.js +2 -0
- package/dist/Runtime/events-tools/commontools.js.map +7 -0
- package/dist/Runtime/events-tools/inputtools.js +2 -0
- package/dist/Runtime/events-tools/inputtools.js.map +7 -0
- package/dist/Runtime/events-tools/networktools.js +2 -0
- package/dist/Runtime/events-tools/networktools.js.map +7 -0
- package/dist/Runtime/events-tools/objecttools.js +2 -0
- package/dist/Runtime/events-tools/objecttools.js.map +7 -0
- package/dist/Runtime/events-tools/runtimescenetools.js +2 -0
- package/dist/Runtime/events-tools/runtimescenetools.js.map +7 -0
- package/dist/Runtime/events-tools/soundtools.js +2 -0
- package/dist/Runtime/events-tools/soundtools.js.map +7 -0
- package/dist/Runtime/events-tools/storagetools.js +2 -0
- package/dist/Runtime/events-tools/storagetools.js.map +7 -0
- package/dist/Runtime/events-tools/stringtools.js +3 -0
- package/dist/Runtime/events-tools/stringtools.js.map +7 -0
- package/dist/Runtime/events-tools/variabletools.js +2 -0
- package/dist/Runtime/events-tools/variabletools.js.map +7 -0
- package/dist/Runtime/events-tools/windowtools.js +2 -0
- package/dist/Runtime/events-tools/windowtools.js.map +7 -0
- package/dist/Runtime/fontfaceobserver-font-manager/fontfaceobserver-font-manager.js +2 -0
- package/dist/Runtime/fontfaceobserver-font-manager/fontfaceobserver-font-manager.js.map +7 -0
- package/dist/Runtime/fontfaceobserver-font-manager/fontfaceobserver.js +16 -0
- package/dist/Runtime/force.js +2 -0
- package/dist/Runtime/force.js.map +7 -0
- package/dist/Runtime/gd.js +2 -0
- package/dist/Runtime/gd.js.map +7 -0
- package/dist/Runtime/howler-sound-manager/howler-sound-manager.js +2 -0
- package/dist/Runtime/howler-sound-manager/howler-sound-manager.js.map +7 -0
- package/dist/Runtime/howler-sound-manager/howler.min.js +3 -0
- package/dist/Runtime/index.html +55 -0
- package/dist/Runtime/inputmanager.js +2 -0
- package/dist/Runtime/inputmanager.js.map +7 -0
- package/dist/Runtime/jsonmanager.js +2 -0
- package/dist/Runtime/jsonmanager.js.map +7 -0
- package/dist/Runtime/layer.js +2 -0
- package/dist/Runtime/layer.js.map +7 -0
- package/dist/Runtime/libs/CocoonJS/cocoon.min.js +4 -0
- package/dist/Runtime/libs/jshashtable.js +2 -0
- package/dist/Runtime/libs/jshashtable.js.map +7 -0
- package/dist/Runtime/libs/rbush.js +624 -0
- package/dist/Runtime/logger.js +2 -0
- package/dist/Runtime/logger.js.map +7 -0
- package/dist/Runtime/oncetriggers.js +2 -0
- package/dist/Runtime/oncetriggers.js.map +7 -0
- package/dist/Runtime/pixi-renderers/CustomObjectPixiRenderer.js +2 -0
- package/dist/Runtime/pixi-renderers/CustomObjectPixiRenderer.js.map +7 -0
- package/dist/Runtime/pixi-renderers/DebuggerPixiRenderer.js +2 -0
- package/dist/Runtime/pixi-renderers/DebuggerPixiRenderer.js.map +7 -0
- package/dist/Runtime/pixi-renderers/RuntimeInstanceContainerPixiRenderer.js +1 -0
- package/dist/Runtime/pixi-renderers/RuntimeInstanceContainerPixiRenderer.js.map +7 -0
- package/dist/Runtime/pixi-renderers/ThreeAddons.js +2 -0
- package/dist/Runtime/pixi-renderers/draco/gltf/draco_decoder.wasm +0 -0
- package/dist/Runtime/pixi-renderers/draco/gltf/draco_wasm_wrapper.js +116 -0
- package/dist/Runtime/pixi-renderers/layer-pixi-renderer.js +15 -0
- package/dist/Runtime/pixi-renderers/layer-pixi-renderer.js.map +7 -0
- package/dist/Runtime/pixi-renderers/loadingscreen-pixi-renderer.js +2 -0
- package/dist/Runtime/pixi-renderers/loadingscreen-pixi-renderer.js.map +7 -0
- package/dist/Runtime/pixi-renderers/pixi-bitmapfont-manager.js +2 -0
- package/dist/Runtime/pixi-renderers/pixi-bitmapfont-manager.js.map +7 -0
- package/dist/Runtime/pixi-renderers/pixi-effects-manager.js +2 -0
- package/dist/Runtime/pixi-renderers/pixi-effects-manager.js.map +7 -0
- package/dist/Runtime/pixi-renderers/pixi-filters-tools.js +2 -0
- package/dist/Runtime/pixi-renderers/pixi-filters-tools.js.map +7 -0
- package/dist/Runtime/pixi-renderers/pixi-image-manager.js +2 -0
- package/dist/Runtime/pixi-renderers/pixi-image-manager.js.map +7 -0
- package/dist/Runtime/pixi-renderers/pixi.js +11 -0
- package/dist/Runtime/pixi-renderers/runtimegame-pixi-renderer.js +2 -0
- package/dist/Runtime/pixi-renderers/runtimegame-pixi-renderer.js.map +7 -0
- package/dist/Runtime/pixi-renderers/runtimescene-pixi-renderer.js +3 -0
- package/dist/Runtime/pixi-renderers/runtimescene-pixi-renderer.js.map +7 -0
- package/dist/Runtime/pixi-renderers/spriteruntimeobject-pixi-renderer.js +2 -0
- package/dist/Runtime/pixi-renderers/spriteruntimeobject-pixi-renderer.js.map +7 -0
- package/dist/Runtime/pixi-renderers/three.js +7 -0
- package/dist/Runtime/polygon.js +2 -0
- package/dist/Runtime/polygon.js.map +7 -0
- package/dist/Runtime/profiler.js +2 -0
- package/dist/Runtime/profiler.js.map +7 -0
- package/dist/Runtime/runtimebehavior.js +2 -0
- package/dist/Runtime/runtimebehavior.js.map +7 -0
- package/dist/Runtime/runtimegame.js +2 -0
- package/dist/Runtime/runtimegame.js.map +7 -0
- package/dist/Runtime/runtimeobject.js +2 -0
- package/dist/Runtime/runtimeobject.js.map +7 -0
- package/dist/Runtime/runtimescene.js +2 -0
- package/dist/Runtime/runtimescene.js.map +7 -0
- package/dist/Runtime/runtimewatermark.js +100 -0
- package/dist/Runtime/runtimewatermark.js.map +7 -0
- package/dist/Runtime/scenestack.js +2 -0
- package/dist/Runtime/scenestack.js.map +7 -0
- package/dist/Runtime/splash/gd-logo-dark-colored.js +2 -0
- package/dist/Runtime/splash/gd-logo-dark-colored.js.map +7 -0
- package/dist/Runtime/splash/gd-logo-dark.js +2 -0
- package/dist/Runtime/splash/gd-logo-dark.js.map +7 -0
- package/dist/Runtime/splash/gd-logo-light-colored.js +2 -0
- package/dist/Runtime/splash/gd-logo-light-colored.js.map +7 -0
- package/dist/Runtime/splash/gd-logo-light.js +2 -0
- package/dist/Runtime/splash/gd-logo-light.js.map +7 -0
- package/dist/Runtime/spriteruntimeobject.js +2 -0
- package/dist/Runtime/spriteruntimeobject.js.map +7 -0
- package/dist/Runtime/timemanager.js +2 -0
- package/dist/Runtime/timemanager.js.map +7 -0
- package/dist/Runtime/timer.js +2 -0
- package/dist/Runtime/timer.js.map +7 -0
- package/dist/Runtime/types/global-pixi.d.ts +22 -0
- package/dist/Runtime/types/global-three-addons.d.ts +9 -0
- package/dist/Runtime/types/global-three.d.ts +3 -0
- package/dist/Runtime/types/global-types.d.ts +61 -0
- package/dist/Runtime/types/howler.d.ts +313 -0
- package/dist/Runtime/types/project-data.d.ts +276 -0
- package/dist/Runtime/variable.js +2 -0
- package/dist/Runtime/variable.js.map +7 -0
- package/dist/Runtime/variablescontainer.js +2 -0
- package/dist/Runtime/variablescontainer.js.map +7 -0
- package/dist/lib/libGD.cjs +22 -0
- package/dist/lib/libGD.wasm +0 -0
- package/dist/loaders.js +1 -0
- package/package.json +24 -10
- package/src/downloadGD.js +0 -70
- package/src/index.js +21 -14
- package/examples/create-objects-from-json/assets/Blank button.png +0 -0
- package/examples/create-objects-from-json/game.json +0 -258
- package/examples/create-objects-from-json/index.js +0 -50
- package/examples/create-objects-from-json/mylist.json +0 -7
- package/examples/export-game/game.json +0 -205
- package/examples/export-game/index.js +0 -13
- package/src/CaseSensitiveSlug.js +0 -34
- package/src/EventsFunctionsExtensionsLoader/LocalEventsFunctionCodeWriter.js +0 -56
- package/src/EventsFunctionsExtensionsLoader/MetadataDeclarationHelpers.js +0 -489
- package/src/EventsFunctionsExtensionsLoader/index.js +0 -451
- package/src/JsExtensionsLoader/LocalJsExtensionsFinder.js +0 -42
- package/src/JsExtensionsLoader/LocalJsExtensionsLoader.js +0 -57
- package/src/JsExtensionsLoader/index.js +0 -101
- package/src/LocalFileSystem.js +0 -158
- package/src/LocalProjectOpener.js +0 -46
- package/src/LocalProjectWriter.js +0 -96
- package/src/MapFor.js +0 -46
- package/src/ObjectSplitter.js +0 -187
- package/src/Serializer.js +0 -35
- package/src/build.js +0 -51
- package/src/runtime-files-list.js +0 -143
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/LICENSE
CHANGED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
var gdjs;(n=>{class o{tasksWithCallback=new Array;processTasks(e){for(let s=0;s<this.tasksWithCallback.length;s++){const i=this.tasksWithCallback[s];i.asyncTask.update(e)&&(i.callback(e),this.tasksWithCallback.splice(s--,1))}}addTask(e,s){this.tasksWithCallback.push({asyncTask:e,callback:s})}clearTasks(){this.tasksWithCallback.length=0}}n.AsyncTasksManager=o;class t{}n.AsyncTask=t;class l extends t{tasks=new Array;addTask(e){this.tasks.push(e)}update(e){for(let s=0;s<this.tasks.length;s++)this.tasks[s].update(e)&&this.tasks.splice(s--,1);return this.tasks.length===0}}n.TaskGroup=l;class c extends t{update(){return!0}}n.ResolveTask=c;const r=new n.Logger("Internal PromiseTask");class h extends t{isResolved=!1;promise;constructor(e){super(),this.promise=e.catch(s=>{r.error(`A promise error has not been handled, this should never happen!
|
|
2
|
+
If you are using JavaScript promises in an asynchronous action, make sure to add a .catch().
|
|
3
|
+
Otherwise, report this as a bug on the GDevelop forums!
|
|
4
|
+
${s?"The following error was thrown: "+s:""}`)}).then(()=>{this.isResolved=!0})}update(){return this.isResolved}}n.PromiseTask=h;class k extends t{isResolved=!1;resolve(){this.isResolved=!0}update(){return this.isResolved}}n.ManuallyResolvableTask=k})(gdjs||={});
|
|
5
|
+
//# sourceMappingURL=AsyncTasksManager.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../GDevelop/GDJS/Runtime/AsyncTasksManager.ts"],
|
|
4
|
+
"sourcesContent": ["/*\n * GDevelop JS Platform\n * Copyright 2013-2022 Florian Rival (Florian.Rival@gmail.com). All rights reserved.\n * This project is released under the MIT License.\n */\nnamespace gdjs {\n /**\n * This stores all asynchronous tasks waiting to be completed,\n * for a given scene.\n * @see {@link RuntimeScene.getAsyncTasksManager}.\n */\n export class AsyncTasksManager {\n /**\n * Maps a task to the callback to be executed once it is finished.\n */\n private tasksWithCallback = new Array<{\n asyncTask: AsyncTask;\n callback: (runtimeScene: gdjs.RuntimeScene) => void;\n }>();\n\n /**\n * Run all pending asynchronous tasks.\n */\n processTasks(runtimeScene: RuntimeScene): void {\n for (let i = 0; i < this.tasksWithCallback.length; i++) {\n const taskWithCallback = this.tasksWithCallback[i];\n if (taskWithCallback.asyncTask.update(runtimeScene)) {\n // The task has finished, run the callback and remove it.\n taskWithCallback.callback(runtimeScene);\n this.tasksWithCallback.splice(i--, 1);\n }\n }\n }\n\n /**\n * Adds a task to be processed between frames and a callback for when it is done to the manager.\n * @param asyncTask The {@link AsyncTask} to run.\n * @param callback The callback to execute once the task is finished.\n */\n addTask(\n asyncTask: AsyncTask,\n callback: (runtimeScene: RuntimeScene) => void\n ): void {\n this.tasksWithCallback.push({ asyncTask, callback });\n }\n\n /**\n * For testing only - removes all tasks.\n * @internal\n */\n clearTasks() {\n this.tasksWithCallback.length = 0;\n }\n }\n\n /**\n * An asynchronous task to be run between frames.\n */\n export abstract class AsyncTask {\n /**\n * Called every frame where the scene is active.\n * @param runtimeScene - The scene the task runs on.\n * @return True if the task is finished, false if it needs to continue running.\n */\n abstract update(runtimeScene: RuntimeScene): boolean;\n }\n\n export class TaskGroup extends AsyncTask {\n private tasks = new Array<AsyncTask>();\n\n addTask(task: AsyncTask) {\n this.tasks.push(task);\n }\n\n update(runtimeScene: gdjs.RuntimeScene) {\n for (let i = 0; i < this.tasks.length; i++) {\n const task = this.tasks[i];\n if (task.update(runtimeScene)) this.tasks.splice(i--, 1);\n }\n\n return this.tasks.length === 0;\n }\n }\n\n export class ResolveTask extends AsyncTask {\n update() {\n return true;\n }\n }\n\n const logger = new gdjs.Logger('Internal PromiseTask');\n\n /**\n * A task that resolves with a promise.\n */\n export class PromiseTask extends AsyncTask {\n private isResolved: boolean = false;\n promise: Promise<void>;\n\n constructor(promise: Promise<void>) {\n super();\n this.promise = promise\n .catch((error) => {\n logger.error(\n `A promise error has not been handled, this should never happen!\nIf you are using JavaScript promises in an asynchronous action, make sure to add a .catch().\nOtherwise, report this as a bug on the GDevelop forums!\n${error ? 'The following error was thrown: ' + error : ''}`\n );\n })\n .then(() => {\n this.isResolved = true;\n });\n }\n\n update() {\n return this.isResolved;\n }\n }\n\n export class ManuallyResolvableTask extends AsyncTask {\n private isResolved = false;\n\n resolve() {\n this.isResolved = true;\n }\n\n update(): boolean {\n return this.isResolved;\n }\n }\n}\n"],
|
|
5
|
+
"mappings": "AAKA,IAAU,MAAAA,GAAV,CAMS,MAAMC,CAAkB,CAIrB,kBAAoB,IAAI,MAQhC,aAAaC,EAAkC,CAC7C,QAASC,EAAI,EAAGA,EAAI,KAAK,kBAAkB,OAAQA,IAAK,CACtD,MAAMC,EAAmB,KAAK,kBAAkBD,CAAC,EAC7CC,EAAiB,UAAU,OAAOF,CAAY,IAEhDE,EAAiB,SAASF,CAAY,EACtC,KAAK,kBAAkB,OAAOC,IAAK,CAAC,EAExC,CACF,CAOA,QACEE,EACAC,EACM,CACN,KAAK,kBAAkB,KAAK,CAAE,UAAAD,EAAW,SAAAC,CAAS,CAAC,CACrD,CAMA,YAAa,CACX,KAAK,kBAAkB,OAAS,CAClC,CACF,CA1CON,EAAM,kBAAAC,EA+CN,MAAeM,CAAU,CAOhC,CAPOP,EAAe,UAAAO,EASf,MAAMC,UAAkBD,CAAU,CAC/B,MAAQ,IAAI,MAEpB,QAAQE,EAAiB,CACvB,KAAK,MAAM,KAAKA,CAAI,CACtB,CAEA,OAAOP,EAAiC,CACtC,QAASC,EAAI,EAAGA,EAAI,KAAK,MAAM,OAAQA,IACxB,KAAK,MAAMA,CAAC,EAChB,OAAOD,CAAY,GAAG,KAAK,MAAM,OAAOC,IAAK,CAAC,EAGzD,OAAO,KAAK,MAAM,SAAW,CAC/B,CACF,CAfOH,EAAM,UAAAQ,EAiBN,MAAME,UAAoBH,CAAU,CACzC,QAAS,CACP,MAAO,EACT,CACF,CAJOP,EAAM,YAAAU,EAMb,MAAMC,EAAS,IAAIX,EAAK,OAAO,sBAAsB,EAK9C,MAAMY,UAAoBL,CAAU,CACjC,WAAsB,GAC9B,QAEA,YAAYM,EAAwB,CAClC,MAAM,EACN,KAAK,QAAUA,EACZ,MAAOC,GAAU,CAChBH,EAAO,MACL;AAAA;AAAA;AAAA,EAGVG,EAAQ,mCAAqCA,EAAQ,EAAE,EAC/C,CACF,CAAC,EACA,KAAK,IAAM,CACV,KAAK,WAAa,EACpB,CAAC,CACL,CAEA,QAAS,CACP,OAAO,KAAK,UACd,CACF,CAvBOd,EAAM,YAAAY,EAyBN,MAAMG,UAA+BR,CAAU,CAC5C,WAAa,GAErB,SAAU,CACR,KAAK,WAAa,EACpB,CAEA,QAAkB,CAChB,OAAO,KAAK,UACd,CACF,CAVOP,EAAM,uBAAAe,IAnHL",
|
|
6
|
+
"names": ["gdjs", "AsyncTasksManager", "runtimeScene", "i", "taskWithCallback", "asyncTask", "callback", "AsyncTask", "TaskGroup", "task", "ResolveTask", "logger", "PromiseTask", "promise", "error", "ManuallyResolvableTask"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
<?xml version='1.0' encoding='utf-8'?>
|
|
2
|
+
<widget id="GDJS_PACKAGENAME" version="GDJS_PROJECTVERSION" xmlns="http://www.w3.org/ns/widgets"
|
|
3
|
+
xmlns:cdv="http://cordova.apache.org/ns/1.0">
|
|
4
|
+
<name>GDJS_PROJECTNAME</name>
|
|
5
|
+
<content src="index.html" />
|
|
6
|
+
<plugin name="cordova-plugin-whitelist" version="1" />
|
|
7
|
+
<plugin name="cordova-plugin-screen-orientation" version="3.0.2" />
|
|
8
|
+
<access origin="*" />
|
|
9
|
+
<allow-intent href="http://*/*" />
|
|
10
|
+
<allow-intent href="https://*/*" />
|
|
11
|
+
<allow-intent href="tel:*" />
|
|
12
|
+
<allow-intent href="sms:*" />
|
|
13
|
+
<allow-intent href="mailto:*" />
|
|
14
|
+
<allow-intent href="geo:*" />
|
|
15
|
+
<platform name="android">
|
|
16
|
+
<allow-intent href="market:*" />
|
|
17
|
+
|
|
18
|
+
<!-- Increase timeout value for low-end android devices -->
|
|
19
|
+
<preference name="loadUrlTimeoutValue" value="60000" />
|
|
20
|
+
|
|
21
|
+
<!-- GDJS_ICONS_ANDROID -->
|
|
22
|
+
<preference name="AndroidWindowSplashScreenBackground" value="#000000" />
|
|
23
|
+
</platform>
|
|
24
|
+
<platform name="ios">
|
|
25
|
+
<allow-intent href="itms:*" />
|
|
26
|
+
<allow-intent href="itms-apps:*" />
|
|
27
|
+
|
|
28
|
+
<preference name="SwiftVersion" value="5.3" />
|
|
29
|
+
|
|
30
|
+
<!-- GDJS_ICONS_IOS -->
|
|
31
|
+
</platform>
|
|
32
|
+
|
|
33
|
+
<preference name="AndroidXEnabled" value="true" />
|
|
34
|
+
|
|
35
|
+
<preference name="BackgroundColor" value="0xff000000" />
|
|
36
|
+
|
|
37
|
+
<!-- Android Fullscreen -->
|
|
38
|
+
<preference name="Fullscreen" value="true" />
|
|
39
|
+
|
|
40
|
+
<!-- Cordova/Phonegap version -->
|
|
41
|
+
<preference name="phonegap-version" value="cli-9.0.0" />
|
|
42
|
+
|
|
43
|
+
<!-- GDJS_EXTENSION_CORDOVA_DEPENDENCY -->
|
|
44
|
+
</widget>
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "GDJS_GAME_MANGLED_NAME",
|
|
3
|
+
"displayName": "GDJS_GAME_NAME",
|
|
4
|
+
"version": "GDJS_GAME_VERSION",
|
|
5
|
+
"description": "GDJS_GAME_NAME",
|
|
6
|
+
"main": "index.js",
|
|
7
|
+
"scripts": {
|
|
8
|
+
"test": "echo \"Error: no test specified\" && exit 1"
|
|
9
|
+
},
|
|
10
|
+
"keywords": [
|
|
11
|
+
"ecosystem:cordova"
|
|
12
|
+
],
|
|
13
|
+
"author": "GDJS_GAME_AUTHOR",
|
|
14
|
+
"devDependencies": {
|
|
15
|
+
"cordova-plugin-ionic-webview": "5.0.0"
|
|
16
|
+
},
|
|
17
|
+
"cordova": {
|
|
18
|
+
"plugins": {
|
|
19
|
+
"cordova-plugin-ionic-webview": {}
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html>
|
|
3
|
+
<head>
|
|
4
|
+
<title></title>
|
|
5
|
+
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
|
|
6
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=0" />
|
|
7
|
+
<style type="text/css">
|
|
8
|
+
/* Prevent copy paste for all elements except text fields */
|
|
9
|
+
* { -webkit-user-select:none; -webkit-tap-highlight-color:rgba(255, 255, 255, 0); }
|
|
10
|
+
input, textarea { -webkit-user-select:text; }
|
|
11
|
+
body { background-color:black; color:white }
|
|
12
|
+
/* GDJS_CUSTOM_STYLE */
|
|
13
|
+
</style>
|
|
14
|
+
<script src='cordova.js'></script>
|
|
15
|
+
<!-- GDJS_CODE_FILES -->
|
|
16
|
+
<script type="text/javascript">
|
|
17
|
+
var onDeviceReady=function(){
|
|
18
|
+
//Initialization
|
|
19
|
+
if (typeof navigator !== "undefined" && navigator.splashscreen && navigator.splashscreen.hide)
|
|
20
|
+
navigator.splashscreen.hide();
|
|
21
|
+
|
|
22
|
+
//Initialization
|
|
23
|
+
var game = new gdjs.RuntimeGame(gdjs.projectData, {}/*GDJS_ADDITIONAL_SPEC*/);
|
|
24
|
+
|
|
25
|
+
//Create a renderer
|
|
26
|
+
var canvasArea = document.getElementById("canvasArea");
|
|
27
|
+
game.getRenderer().createStandardCanvas(canvasArea);
|
|
28
|
+
|
|
29
|
+
//Bind keyboards/mouse/touch events
|
|
30
|
+
game.getRenderer().bindStandardEvents(game.getInputManager(), window, document);
|
|
31
|
+
|
|
32
|
+
//Load all assets and start the game
|
|
33
|
+
game.loadAllAssets(function() {
|
|
34
|
+
game.startGameLoop();
|
|
35
|
+
});
|
|
36
|
+
};
|
|
37
|
+
document.addEventListener("deviceready", onDeviceReady, false);
|
|
38
|
+
</script>
|
|
39
|
+
</head>
|
|
40
|
+
<body>
|
|
41
|
+
<div id="canvasArea"></div>
|
|
42
|
+
|
|
43
|
+
<!-- GDJS_CUSTOM_HTML -->
|
|
44
|
+
</body>
|
|
45
|
+
</html>
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var gdjs;(n=>{class o extends n.RuntimeObject{_instanceContainer;_isUntransformedHitBoxesDirty=!0;_untransformedHitBoxes=[];_unrotatedAABB={min:[0,0],max:[0,0]};_scaleX=1;_scaleY=1;_flippedX=!1;_flippedY=!1;opacity=255;_customCenter=null;_localTransformation=new n.AffineTransformation;_localInverseTransformation=new n.AffineTransformation;_isLocalTransformationDirty=!0;constructor(t,e){super(t,e),this._instanceContainer=new n.CustomRuntimeObjectInstanceContainer(t,this),this._instanceContainer.loadFrom(e),this.getRenderer().reinitialize(this,t)}reinitialize(t){super.reinitialize(t),this._instanceContainer.loadFrom(t),this.getRenderer().reinitialize(this,this.getParent()),this.onCreated()}updateFromObjectData(t,e){return this._instanceContainer.updateFrom(t,e)}extraInitializationFromInitialInstance(t){t.customSize&&(this.setWidth(t.width),this.setHeight(t.height))}onDestroyFromScene(t){this.onDestroy(t),super.onDestroyFromScene(t),this._instanceContainer.onDestroyFromScene(t)}update(t){this._instanceContainer._updateObjectsPreEvents(),this.doStepPreEvents(t);const e=this.getRuntimeScene().getProfiler();e&&e.begin(this.type),this.doStepPostEvents(t),e&&e.end(this.type),this._instanceContainer._updateObjectsPostEvents()}onHotReloading(t){}doStepPreEvents(t){}doStepPostEvents(t){}onDestroy(t){}updatePreRender(t){this._instanceContainer._updateObjectsPreRender(),this.getRenderer().ensureUpToDate()}getRendererObject(){return this.getRenderer().getRendererObject()}getRenderer(){return this._instanceContainer.getRenderer()}onChildrenLocationChanged(){this._isUntransformedHitBoxesDirty=!0,this.invalidateHitboxes(),this.getRenderer().update()}updateHitBoxes(){this._isUntransformedHitBoxesDirty&&this._updateUntransformedHitBoxes();const t=this.getLocalTransformation();for(let e=0;e<this._untransformedHitBoxes.length;++e){e>=this.hitBoxes.length&&this.hitBoxes.push(new n.Polygon);for(let i=0;i<this._untransformedHitBoxes[e].vertices.length;++i)i>=this.hitBoxes[e].vertices.length&&this.hitBoxes[e].vertices.push([0,0]),t.transform(this._untransformedHitBoxes[e].vertices[i],this.hitBoxes[e].vertices[i]);this.hitBoxes[e].vertices.length=this._untransformedHitBoxes[e].vertices.length}}_updateUntransformedHitBoxes(){if(this._isUntransformedHitBoxesDirty=!1,this._untransformedHitBoxes.length=0,this._instanceContainer.getAdhocListOfAllInstances().length===0)this._unrotatedAABB.min[0]=0,this._unrotatedAABB.min[1]=0,this._unrotatedAABB.max[0]=0,this._unrotatedAABB.max[1]=0;else{let t=Number.MAX_VALUE,e=Number.MAX_VALUE,i=-Number.MAX_VALUE,s=-Number.MAX_VALUE;for(const a of this._instanceContainer.getAdhocListOfAllInstances()){if(!a.isIncludedInParentCollisionMask())continue;Array.prototype.push.apply(this._untransformedHitBoxes,a.getHitBoxes());const r=a.getAABB();t=Math.min(t,r.min[0]),e=Math.min(e,r.min[1]),i=Math.max(i,r.max[0]),s=Math.max(s,r.max[1])}for(this._unrotatedAABB.min[0]=t,this._unrotatedAABB.min[1]=e,this._unrotatedAABB.max[0]=i,this._unrotatedAABB.max[1]=s;this.hitBoxes.length<this._untransformedHitBoxes.length;)this.hitBoxes.push(new n.Polygon);this.hitBoxes.length=this._untransformedHitBoxes.length}}applyObjectTransformation(t,e,i){const s=i;s[0]=t,s[1]=e,this.getLocalTransformation().transform(s,i)}getLocalTransformation(){return this._isLocalTransformationDirty&&this._updateLocalTransformation(),this._localTransformation}getLocalInverseTransformation(){return this._isLocalTransformationDirty&&this._updateLocalTransformation(),this._localInverseTransformation}_updateLocalTransformation(){const t=Math.abs(this._scaleX),e=Math.abs(this._scaleY),i=this.getUnscaledCenterX()*t,s=this.getUnscaledCenterY()*e,a=this.angle*Math.PI/180;this._localTransformation.setToTranslation(this.x,this.y),this._localTransformation.rotateAround(a,i,s),this._flippedX&&this._localTransformation.flipX(i),this._flippedY&&this._localTransformation.flipY(s),this._localTransformation.scale(t,e),this._localInverseTransformation.copyFrom(this._localTransformation),this._localInverseTransformation.invert(),this._isLocalTransformationDirty=!1}applyObjectInverseTransformation(t,e,i){const s=i;s[0]=t,s[1]=e,this.getLocalInverseTransformation().transform(s,i)}getDrawableX(){this._isUntransformedHitBoxesDirty&&this._updateUntransformedHitBoxes();const t=this.getScaleX();return this._flippedX?this.x+(-this._unrotatedAABB.min[0]-this.getUnscaledWidth()+2*this.getUnscaledCenterX())*t:this.x+this._unrotatedAABB.min[0]*t}getDrawableY(){this._isUntransformedHitBoxesDirty&&this._updateUntransformedHitBoxes();const t=this.getScaleY();return this._flippedY?this.y+(-this._unrotatedAABB.min[1]-this.getUnscaledHeight()+2*this.getUnscaledCenterY())*t:this.y+this._unrotatedAABB.min[1]*t}getUnscaledWidth(){return this._isUntransformedHitBoxesDirty&&this._updateUntransformedHitBoxes(),this._unrotatedAABB.max[0]-this._unrotatedAABB.min[0]}getUnscaledHeight(){return this._isUntransformedHitBoxesDirty&&this._updateUntransformedHitBoxes(),this._unrotatedAABB.max[1]-this._unrotatedAABB.min[1]}getUnscaledCenterX(){return this._customCenter?this._customCenter[0]:(this._isUntransformedHitBoxesDirty&&this._updateUntransformedHitBoxes(),(this._unrotatedAABB.min[0]+this._unrotatedAABB.max[0])/2)}getUnscaledCenterY(){return this._customCenter?this._customCenter[1]:(this._isUntransformedHitBoxesDirty&&this._updateUntransformedHitBoxes(),(this._unrotatedAABB.min[1]+this._unrotatedAABB.max[1])/2)}setRotationCenter(t,e){this._customCenter||(this._customCenter=[0,0]),this._customCenter[0]=t,this._customCenter[1]=e,this._isLocalTransformationDirty=!0,this.invalidateHitboxes()}getCenterX(){return this._isUntransformedHitBoxesDirty&&this._updateUntransformedHitBoxes(),(this.getUnscaledCenterX()-this._unrotatedAABB.min[0])*this.getScaleX()}getCenterY(){return this._isUntransformedHitBoxesDirty&&this._updateUntransformedHitBoxes(),(this.getUnscaledCenterY()-this._unrotatedAABB.min[1])*this.getScaleY()}getWidth(){return this.getUnscaledWidth()*this.getScaleX()}getHeight(){return this.getUnscaledHeight()*this.getScaleY()}setWidth(t){const e=this.getUnscaledWidth();e!==0&&this.setScaleX(t/e)}setHeight(t){const e=this.getUnscaledHeight();e!==0&&this.setScaleY(t/e)}setSize(t,e){this.setWidth(t),this.setHeight(e)}setX(t){t!==this.x&&(this.x=t,this._isLocalTransformationDirty=!0,this.invalidateHitboxes(),this.getRenderer().updateX())}setY(t){t!==this.y&&(this.y=t,this._isLocalTransformationDirty=!0,this.invalidateHitboxes(),this.getRenderer().updateY())}setAngle(t){this.angle!==t&&(this.angle=t,this._isLocalTransformationDirty=!0,this.invalidateHitboxes(),this.getRenderer().updateAngle())}setScale(t){t<0&&(t=0),!(t===Math.abs(this._scaleX)&&t===Math.abs(this._scaleY))&&(this._scaleX=t*(this._flippedX?-1:1),this._scaleY=t*(this._flippedY?-1:1),this._isLocalTransformationDirty=!0,this.invalidateHitboxes(),this.getRenderer().update())}setScaleX(t){t<0&&(t=0),t!==Math.abs(this._scaleX)&&(this._scaleX=t*(this._flippedX?-1:1),this._isLocalTransformationDirty=!0,this.invalidateHitboxes(),this.getRenderer().update())}setScaleY(t){t<0&&(t=0),t!==Math.abs(this._scaleY)&&(this._scaleY=t*(this._flippedY?-1:1),this.invalidateHitboxes(),this.getRenderer().update())}getScale(){return(Math.abs(this._scaleX)+Math.abs(this._scaleY))/2}getScaleY(){return Math.abs(this._scaleY)}getScaleX(){return Math.abs(this._scaleX)}setOpacity(t){t<0&&(t=0),t>255&&(t=255),this.opacity=t,this.getRenderer().updateOpacity()}getOpacity(){return this.opacity}hide(t){t===void 0&&(t=!0),this.hidden=t,this.getRenderer().updateVisibility()}flipX(t){t!==this._flippedX&&(this._scaleX*=-1,this._flippedX=t,this.invalidateHitboxes(),this.getRenderer().update())}flipY(t){t!==this._flippedY&&(this._scaleY*=-1,this._flippedY=t,this.invalidateHitboxes(),this.getRenderer().update())}isFlippedX(){return this._flippedX}isFlippedY(){return this._flippedY}}n.CustomRuntimeObject=o,o.supportsReinitialization=!1})(gdjs||={});
|
|
2
|
+
//# sourceMappingURL=CustomRuntimeObject.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../GDevelop/GDJS/Runtime/CustomRuntimeObject.ts"],
|
|
4
|
+
"sourcesContent": ["/*\n * GDevelop JS Platform\n * Copyright 2013-2022 Florian Rival (Florian.Rival@gmail.com). All rights reserved.\n * This project is released under the MIT License.\n */\nnamespace gdjs {\n export type ObjectConfiguration = {\n content: any;\n };\n\n export type CustomObjectConfiguration = ObjectConfiguration & {\n childrenContent: { [objectName: string]: ObjectConfiguration & any };\n };\n\n /**\n * An object that contains other object.\n *\n * This is the base class for objects generated from EventsBasedObject.\n *\n * @see gdjs.CustomRuntimeObjectInstanceContainer\n */\n export class CustomRuntimeObject extends gdjs.RuntimeObject {\n /** It contains the children of this object. */\n _instanceContainer: gdjs.CustomRuntimeObjectInstanceContainer;\n _isUntransformedHitBoxesDirty: boolean = true;\n /** It contains shallow copies of the children hitboxes */\n _untransformedHitBoxes: gdjs.Polygon[] = [];\n /** The dimension of this object is calculated from its children AABBs. */\n _unrotatedAABB: AABB = { min: [0, 0], max: [0, 0] };\n _scaleX: float = 1;\n _scaleY: float = 1;\n _flippedX: boolean = false;\n _flippedY: boolean = false;\n opacity: float = 255;\n _customCenter: FloatPoint | null = null;\n _localTransformation: gdjs.AffineTransformation = new gdjs.AffineTransformation();\n _localInverseTransformation: gdjs.AffineTransformation = new gdjs.AffineTransformation();\n _isLocalTransformationDirty: boolean = true;\n\n /**\n * @param parent The container the object belongs to\n * @param objectData The object data used to initialize the object\n */\n constructor(\n parent: gdjs.RuntimeInstanceContainer,\n objectData: ObjectData & CustomObjectConfiguration\n ) {\n super(parent, objectData);\n this._instanceContainer = new gdjs.CustomRuntimeObjectInstanceContainer(\n parent,\n this\n );\n\n this._instanceContainer.loadFrom(objectData);\n this.getRenderer().reinitialize(this, parent);\n\n // The generated code calls onCreated at the constructor end\n // and onCreated calls its super implementation at its end.\n }\n\n reinitialize(objectData: ObjectData & CustomObjectConfiguration) {\n super.reinitialize(objectData);\n\n this._instanceContainer.loadFrom(objectData);\n this.getRenderer().reinitialize(this, this.getParent());\n\n // The generated code calls the onCreated super implementation at the end.\n this.onCreated();\n }\n\n updateFromObjectData(\n oldObjectData: ObjectData & CustomObjectConfiguration,\n newObjectData: ObjectData & CustomObjectConfiguration\n ): boolean {\n return this._instanceContainer.updateFrom(oldObjectData, newObjectData);\n }\n\n extraInitializationFromInitialInstance(initialInstanceData: InstanceData) {\n if (initialInstanceData.customSize) {\n this.setWidth(initialInstanceData.width);\n this.setHeight(initialInstanceData.height);\n }\n }\n\n onDestroyFromScene(parent: gdjs.RuntimeInstanceContainer): void {\n // Let subclasses do something before the object is destroyed.\n this.onDestroy(parent);\n // Let behaviors do something before the object is destroyed.\n super.onDestroyFromScene(parent);\n // Destroy the children.\n this._instanceContainer.onDestroyFromScene(parent);\n }\n\n update(parent: gdjs.RuntimeInstanceContainer): void {\n this._instanceContainer._updateObjectsPreEvents();\n\n this.doStepPreEvents(parent);\n\n const profiler = this.getRuntimeScene().getProfiler();\n if (profiler) {\n profiler.begin(this.type);\n }\n // This is a bit like the \"scene\" events for custom objects.\n this.doStepPostEvents(parent);\n if (profiler) {\n profiler.end(this.type);\n }\n\n this._instanceContainer._updateObjectsPostEvents();\n }\n\n /**\n * This method is called when the preview is being hot-reloaded.\n */\n onHotReloading(parent: gdjs.RuntimeInstanceContainer) {}\n\n // This is only to handle trigger once.\n doStepPreEvents(parent: gdjs.RuntimeInstanceContainer) {}\n\n /**\n * This method is called each tick after events are done.\n * @param parent The instanceContainer owning the object\n */\n doStepPostEvents(parent: gdjs.RuntimeInstanceContainer) {}\n\n /**\n * This method is called when the object is being removed from its parent\n * container and is about to be destroyed/reused later.\n */\n onDestroy(parent: gdjs.RuntimeInstanceContainer) {}\n\n updatePreRender(parent: gdjs.RuntimeInstanceContainer): void {\n this._instanceContainer._updateObjectsPreRender();\n this.getRenderer().ensureUpToDate();\n }\n\n getRendererObject() {\n return this.getRenderer().getRendererObject();\n }\n\n getRenderer() {\n return this._instanceContainer.getRenderer();\n }\n\n onChildrenLocationChanged() {\n this._isUntransformedHitBoxesDirty = true;\n this.invalidateHitboxes();\n this.getRenderer().update();\n }\n\n updateHitBoxes(): void {\n if (this._isUntransformedHitBoxesDirty) {\n this._updateUntransformedHitBoxes();\n }\n\n // Update the current hitboxes with the frame custom hit boxes\n // and apply transformations.\n const localTransformation = this.getLocalTransformation();\n for (let i = 0; i < this._untransformedHitBoxes.length; ++i) {\n if (i >= this.hitBoxes.length) {\n this.hitBoxes.push(new gdjs.Polygon());\n }\n for (\n let j = 0;\n j < this._untransformedHitBoxes[i].vertices.length;\n ++j\n ) {\n if (j >= this.hitBoxes[i].vertices.length) {\n this.hitBoxes[i].vertices.push([0, 0]);\n }\n localTransformation.transform(\n this._untransformedHitBoxes[i].vertices[j],\n this.hitBoxes[i].vertices[j]\n );\n }\n this.hitBoxes[i].vertices.length = this._untransformedHitBoxes[\n i\n ].vertices.length;\n }\n }\n\n /**\n * Merge the hitboxes of the children.\n */\n _updateUntransformedHitBoxes() {\n this._isUntransformedHitBoxesDirty = false;\n\n this._untransformedHitBoxes.length = 0;\n if (this._instanceContainer.getAdhocListOfAllInstances().length === 0) {\n this._unrotatedAABB.min[0] = 0;\n this._unrotatedAABB.min[1] = 0;\n this._unrotatedAABB.max[0] = 0;\n this._unrotatedAABB.max[1] = 0;\n } else {\n let minX = Number.MAX_VALUE;\n let minY = Number.MAX_VALUE;\n let maxX = -Number.MAX_VALUE;\n let maxY = -Number.MAX_VALUE;\n for (const childInstance of this._instanceContainer.getAdhocListOfAllInstances()) {\n if (!childInstance.isIncludedInParentCollisionMask()) {\n continue;\n }\n Array.prototype.push.apply(\n this._untransformedHitBoxes,\n childInstance.getHitBoxes()\n );\n const childAABB = childInstance.getAABB();\n minX = Math.min(minX, childAABB.min[0]);\n minY = Math.min(minY, childAABB.min[1]);\n maxX = Math.max(maxX, childAABB.max[0]);\n maxY = Math.max(maxY, childAABB.max[1]);\n }\n this._unrotatedAABB.min[0] = minX;\n this._unrotatedAABB.min[1] = minY;\n this._unrotatedAABB.max[0] = maxX;\n this._unrotatedAABB.max[1] = maxY;\n\n while (this.hitBoxes.length < this._untransformedHitBoxes.length) {\n this.hitBoxes.push(new gdjs.Polygon());\n }\n this.hitBoxes.length = this._untransformedHitBoxes.length;\n }\n }\n\n // Position:\n /**\n * Return an array containing the coordinates of the point passed as parameter\n * in parent coordinate coordinates (as opposed to the object local coordinates).\n *\n * All transformations (flipping, scale, rotation) are supported.\n *\n * @param x The X position of the point, in object coordinates.\n * @param y The Y position of the point, in object coordinates.\n * @param result Array that will be updated with the result\n * (x and y position of the point in parent coordinates).\n */\n applyObjectTransformation(x: float, y: float, destination: FloatPoint) {\n const source = destination;\n source[0] = x;\n source[1] = y;\n this.getLocalTransformation().transform(source, destination);\n }\n\n /**\n * Return the affine transformation that represents\n * flipping, scale, rotation and translation of the object.\n * @returns the affine transformation.\n */\n getLocalTransformation(): gdjs.AffineTransformation {\n if (this._isLocalTransformationDirty) {\n this._updateLocalTransformation();\n }\n return this._localTransformation;\n }\n\n getLocalInverseTransformation(): gdjs.AffineTransformation {\n if (this._isLocalTransformationDirty) {\n this._updateLocalTransformation();\n }\n return this._localInverseTransformation;\n }\n\n _updateLocalTransformation() {\n const absScaleX = Math.abs(this._scaleX);\n const absScaleY = Math.abs(this._scaleY);\n const centerX = this.getUnscaledCenterX() * absScaleX;\n const centerY = this.getUnscaledCenterY() * absScaleY;\n const angleInRadians = (this.angle * Math.PI) / 180;\n\n this._localTransformation.setToTranslation(this.x, this.y);\n this._localTransformation.rotateAround(angleInRadians, centerX, centerY);\n if (this._flippedX) {\n this._localTransformation.flipX(centerX);\n }\n if (this._flippedY) {\n this._localTransformation.flipY(centerY);\n }\n this._localTransformation.scale(absScaleX, absScaleY);\n\n this._localInverseTransformation.copyFrom(this._localTransformation);\n this._localInverseTransformation.invert();\n this._isLocalTransformationDirty = false;\n }\n\n /**\n * Return an array containing the coordinates of the point passed as parameter\n * in object local coordinates (as opposed to the parent coordinate coordinates).\n *\n * All transformations (flipping, scale, rotation) are supported.\n *\n * @param x The X position of the point, in parent coordinates.\n * @param y The Y position of the point, in parent coordinates.\n * @param result Array that will be updated with the result\n * (x and y position of the point in object coordinates).\n */\n applyObjectInverseTransformation(\n x: float,\n y: float,\n destination: FloatPoint\n ) {\n const source = destination;\n source[0] = x;\n source[1] = y;\n this.getLocalInverseTransformation().transform(source, destination);\n }\n\n getDrawableX(): float {\n if (this._isUntransformedHitBoxesDirty) {\n this._updateUntransformedHitBoxes();\n }\n const absScaleX = this.getScaleX();\n if (!this._flippedX) {\n return this.x + this._unrotatedAABB.min[0] * absScaleX;\n } else {\n return (\n this.x +\n (-this._unrotatedAABB.min[0] -\n this.getUnscaledWidth() +\n 2 * this.getUnscaledCenterX()) *\n absScaleX\n );\n }\n }\n\n getDrawableY(): float {\n if (this._isUntransformedHitBoxesDirty) {\n this._updateUntransformedHitBoxes();\n }\n const absScaleY = this.getScaleY();\n if (!this._flippedY) {\n return this.y + this._unrotatedAABB.min[1] * absScaleY;\n } else {\n return (\n this.y +\n (-this._unrotatedAABB.min[1] -\n this.getUnscaledHeight() +\n 2 * this.getUnscaledCenterY()) *\n absScaleY\n );\n }\n }\n\n /**\n * @return the internal width of the object according to its children.\n */\n getUnscaledWidth(): float {\n if (this._isUntransformedHitBoxesDirty) {\n this._updateUntransformedHitBoxes();\n }\n return this._unrotatedAABB.max[0] - this._unrotatedAABB.min[0];\n }\n\n /**\n * @return the internal height of the object according to its children.\n */\n getUnscaledHeight(): float {\n if (this._isUntransformedHitBoxesDirty) {\n this._updateUntransformedHitBoxes();\n }\n return this._unrotatedAABB.max[1] - this._unrotatedAABB.min[1];\n }\n\n /**\n * @returns the center X from the local origin (0;0).\n */\n getUnscaledCenterX(): float {\n if (this._customCenter) {\n return this._customCenter[0];\n }\n if (this._isUntransformedHitBoxesDirty) {\n this._updateUntransformedHitBoxes();\n }\n return (this._unrotatedAABB.min[0] + this._unrotatedAABB.max[0]) / 2;\n }\n\n /**\n * @returns the center Y from the local origin (0;0).\n */\n getUnscaledCenterY(): float {\n if (this._customCenter) {\n return this._customCenter[1];\n }\n if (this._isUntransformedHitBoxesDirty) {\n this._updateUntransformedHitBoxes();\n }\n return (this._unrotatedAABB.min[1] + this._unrotatedAABB.max[1]) / 2;\n }\n\n /**\n * The center of rotation is defined relatively to the origin (the object\n * position).\n * This avoids the center to move when children push the bounds.\n *\n * When no custom center is defined, it will move\n * to stay at the center of the children bounds.\n *\n * @param x coordinate of the custom center\n * @param y coordinate of the custom center\n */\n setRotationCenter(x: float, y: float) {\n if (!this._customCenter) {\n this._customCenter = [0, 0];\n }\n this._customCenter[0] = x;\n this._customCenter[1] = y;\n\n this._isLocalTransformationDirty = true;\n this.invalidateHitboxes();\n }\n\n getCenterX(): float {\n if (this._isUntransformedHitBoxesDirty) {\n this._updateUntransformedHitBoxes();\n }\n return (\n (this.getUnscaledCenterX() - this._unrotatedAABB.min[0]) *\n this.getScaleX()\n );\n }\n\n getCenterY(): float {\n if (this._isUntransformedHitBoxesDirty) {\n this._updateUntransformedHitBoxes();\n }\n return (\n (this.getUnscaledCenterY() - this._unrotatedAABB.min[1]) *\n this.getScaleY()\n );\n }\n\n getWidth(): float {\n return this.getUnscaledWidth() * this.getScaleX();\n }\n\n getHeight(): float {\n return this.getUnscaledHeight() * this.getScaleY();\n }\n\n setWidth(newWidth: float): void {\n const unscaledWidth = this.getUnscaledWidth();\n if (unscaledWidth !== 0) {\n this.setScaleX(newWidth / unscaledWidth);\n }\n }\n\n setHeight(newHeight: float): void {\n const unscaledHeight = this.getUnscaledHeight();\n if (unscaledHeight !== 0) {\n this.setScaleY(newHeight / unscaledHeight);\n }\n }\n\n /**\n * Change the size of the object.\n *\n * @param newWidth The new width of the object, in pixels.\n * @param newHeight The new height of the object, in pixels.\n */\n setSize(newWidth: float, newHeight: float): void {\n this.setWidth(newWidth);\n this.setHeight(newHeight);\n }\n\n setX(x: float): void {\n if (x === this.x) {\n return;\n }\n this.x = x;\n this._isLocalTransformationDirty = true;\n this.invalidateHitboxes();\n this.getRenderer().updateX();\n }\n\n setY(y: float): void {\n if (y === this.y) {\n return;\n }\n this.y = y;\n this._isLocalTransformationDirty = true;\n this.invalidateHitboxes();\n this.getRenderer().updateY();\n }\n\n setAngle(angle: float): void {\n if (this.angle === angle) {\n return;\n }\n this.angle = angle;\n this._isLocalTransformationDirty = true;\n this.invalidateHitboxes();\n this.getRenderer().updateAngle();\n }\n\n /**\n * Change the scale on X and Y axis of the object.\n *\n * @param newScale The new scale (must be greater than 0).\n */\n setScale(newScale: number): void {\n if (newScale < 0) {\n newScale = 0;\n }\n if (\n newScale === Math.abs(this._scaleX) &&\n newScale === Math.abs(this._scaleY)\n ) {\n return;\n }\n this._scaleX = newScale * (this._flippedX ? -1 : 1);\n this._scaleY = newScale * (this._flippedY ? -1 : 1);\n this._isLocalTransformationDirty = true;\n this.invalidateHitboxes();\n this.getRenderer().update();\n }\n\n /**\n * Change the scale on X axis of the object (changing its width).\n *\n * @param newScale The new scale (must be greater than 0).\n */\n setScaleX(newScale: number): void {\n if (newScale < 0) {\n newScale = 0;\n }\n if (newScale === Math.abs(this._scaleX)) {\n return;\n }\n this._scaleX = newScale * (this._flippedX ? -1 : 1);\n this._isLocalTransformationDirty = true;\n this.invalidateHitboxes();\n this.getRenderer().update();\n }\n\n /**\n * Change the scale on Y axis of the object (changing its height).\n *\n * @param newScale The new scale (must be greater than 0).\n */\n setScaleY(newScale: number): void {\n if (newScale < 0) {\n newScale = 0;\n }\n if (newScale === Math.abs(this._scaleY)) {\n return;\n }\n this._scaleY = newScale * (this._flippedY ? -1 : 1);\n this.invalidateHitboxes();\n this.getRenderer().update();\n }\n\n /**\n * Get the scale of the object (or the average of the X and Y scale in case\n * they are different).\n *\n * @return the scale of the object (or the average of the X and Y scale in\n * case they are different).\n */\n getScale(): number {\n return (Math.abs(this._scaleX) + Math.abs(this._scaleY)) / 2.0;\n }\n\n /**\n * Get the scale of the object on Y axis.\n *\n * @return the scale of the object on Y axis\n */\n getScaleY(): float {\n return Math.abs(this._scaleY);\n }\n\n /**\n * Get the scale of the object on X axis.\n *\n * @return the scale of the object on X axis\n */\n getScaleX(): float {\n return Math.abs(this._scaleX);\n }\n\n // Visibility and display :\n /**\n * Change the transparency of the object.\n * @param opacity The new opacity, between 0 (transparent) and 255 (opaque).\n */\n setOpacity(opacity: float): void {\n if (opacity < 0) {\n opacity = 0;\n }\n if (opacity > 255) {\n opacity = 255;\n }\n this.opacity = opacity;\n this.getRenderer().updateOpacity();\n }\n\n /**\n * Get the transparency of the object.\n * @return The opacity, between 0 (transparent) and 255 (opaque).\n */\n getOpacity(): number {\n return this.opacity;\n }\n\n /**\n * Hide (or show) the object\n * @param enable true to hide the object, false to show it again.\n */\n hide(enable: boolean): void {\n if (enable === undefined) {\n enable = true;\n }\n this.hidden = enable;\n this.getRenderer().updateVisibility();\n }\n\n flipX(enable: boolean) {\n if (enable !== this._flippedX) {\n this._scaleX *= -1;\n this._flippedX = enable;\n this.invalidateHitboxes();\n this.getRenderer().update();\n }\n }\n\n flipY(enable: boolean) {\n if (enable !== this._flippedY) {\n this._scaleY *= -1;\n this._flippedY = enable;\n this.invalidateHitboxes();\n this.getRenderer().update();\n }\n }\n\n isFlippedX(): boolean {\n return this._flippedX;\n }\n\n isFlippedY(): boolean {\n return this._flippedY;\n }\n }\n\n // Others initialization and internal state management :\n // TODO EBO Activate and test instance recycling.\n CustomRuntimeObject.supportsReinitialization = false;\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["gdjs", "CustomRuntimeObject", "parent", "objectData", "oldObjectData", "newObjectData", "initialInstanceData", "profiler", "localTransformation", "i", "j", "minX", "minY", "maxX", "maxY", "childInstance", "childAABB", "x", "y", "destination", "source", "absScaleX", "absScaleY", "centerX", "centerY", "angleInRadians", "newWidth", "unscaledWidth", "newHeight", "unscaledHeight", "angle", "newScale", "opacity", "enable"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var gdjs;(i=>{const c=new i.Logger("CustomRuntimeObject");class h extends i.RuntimeInstanceContainer{_renderer;_debuggerRenderer;_runtimeScene;_parent;_customObject;_isLoaded=!1;constructor(n,t){super(),this._parent=n,this._customObject=t,this._runtimeScene=n.getScene(),this._renderer=new i.CustomObjectRenderer(t,this,n),this._debuggerRenderer=new i.DebuggerRenderer(this)}addLayer(n){const t=new i.RuntimeCustomObjectLayer(n,this);this._layers.put(n.name,t),this._orderedLayers.push(t)}createObject(n){const t=super.createObject(n);return this._customObject.onChildrenLocationChanged(),t}loadFrom(n){this._isLoaded&&this.onDestroyFromScene(this._parent);const t=this._runtimeScene.getGame().getEventsBasedObjectData(n.type);if(!t){c.error("loadFrom was called without an events-based object");return}for(let s=0,e=t.objects.length;s<e;++s){const r=t.objects[s];this.registerObject({...r,...n.childrenContent[r.name]})}this.addLayer({name:"",visibility:!0,cameras:[{defaultSize:!0,defaultViewport:!0,height:0,viewportBottom:0,viewportLeft:0,viewportRight:0,viewportTop:0,width:0}],effects:[],ambientLightColorR:0,ambientLightColorG:0,ambientLightColorB:0,isLightingLayer:!1,followBaseLayerCamera:!1}),this._setLayerDefaultZOrders(),this._isLoaded=!0}updateFrom(n,t){const s=this._runtimeScene.getGame().getEventsBasedObjectData(t.type);if(!s)return c.error("updateFrom was called without an events-based object"),!1;for(let e=0,r=s.objects.length;e<r;++e){const o=s.objects[e].name,a={...s.objects[e],...n.childrenContent[o]},d={...s.objects[e],...t.childrenContent[o]};this.updateObject(d);for(const u of this.getInstancesOf(o))u.updateFromObjectData(a,d)}return!0}onDestroyFromScene(n){if(!this._isLoaded)return;const t=this.getAdhocListOfAllInstances();for(let s=0,e=t.length;s<e;++s)t[s].onDestroyFromScene(this);this._destroy(),this._isLoaded=!1}_destroy(){super._destroy(),this._onceTriggers=null}_updateObjectsPreRender(){const n=this.getAdhocListOfAllInstances();for(let t=0,s=n.length;t<s;++t){const e=n[t],r=e.getRendererObject();r&&(r.visible=!e.isHidden(),r.visible&&this.getGame().getEffectsManager().updatePreRender(e.getRendererEffects(),e)),this._debugDrawEnabled&&this._debuggerRenderer.renderDebugDraw(n,this._debugDrawShowHiddenInstances,this._debugDrawShowPointsNames,this._debugDrawShowCustomPoints),e.updatePreRender(this)}}_updateObjectsPreEvents(){const n=this.getAdhocListOfAllInstances();for(let t=0,s=n.length;t<s;++t){const e=n[t],r=e.getElapsedTime();if(e.hasNoForces())e.update(this);else{const o=e.getAverageForce(),a=r/1e3;e.setX(e.getX()+o.getX()*a),e.setY(e.getY()+o.getY()*a),e.update(this),e.updateForces(a)}e.updateTimers(r),e.stepBehaviorsPreEvents(this)}this._cacheOrClearRemovedInstances()}getRenderer(){return this._renderer}getDebuggerRenderer(){return this._debuggerRenderer}getGame(){return this._runtimeScene.getGame()}getScene(){return this._runtimeScene}getViewportWidth(){return this._customObject.getUnscaledWidth()}getViewportHeight(){return this._customObject.getUnscaledHeight()}getViewportOriginX(){return this._customObject.getUnscaledCenterX()}getViewportOriginY(){return this._customObject.getUnscaledCenterY()}onChildrenLocationChanged(){this._customObject.onChildrenLocationChanged()}convertCoords(n,t,s){let e=s||[0,0];return e=this._parent.getLayer(this._customObject.getLayer()).convertCoords(n,t,0,e),this._customObject.applyObjectInverseTransformation(e[0],e[1],e),e}convertInverseCoords(n,t,s){const e=s||[0,0];return this._customObject.applyObjectTransformation(n,t,e),this._parent.convertInverseCoords(e[0],e[1],e)}getElapsedTime(){return this._parent.getElapsedTime()}}i.CustomRuntimeObjectInstanceContainer=h})(gdjs||={});
|
|
2
|
+
//# sourceMappingURL=CustomRuntimeObjectInstanceContainer.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../GDevelop/GDJS/Runtime/CustomRuntimeObjectInstanceContainer.ts"],
|
|
4
|
+
"sourcesContent": ["/*\n * GDevelop JS Platform\n * Copyright 2013-2022 Florian Rival (Florian.Rival@gmail.com). All rights reserved.\n * This project is released under the MIT License.\n */\nnamespace gdjs {\n const logger = new gdjs.Logger('CustomRuntimeObject');\n\n /**\n * The instance container of a custom object, containing instances of objects rendered on screen.\n *\n * @see gdjs.CustomRuntimeObject\n */\n export class CustomRuntimeObjectInstanceContainer extends gdjs.RuntimeInstanceContainer {\n _renderer: gdjs.CustomObjectRenderer;\n _debuggerRenderer: gdjs.DebuggerRenderer;\n _runtimeScene: gdjs.RuntimeScene;\n /** The parent container that contains the object associated with this container. */\n _parent: gdjs.RuntimeInstanceContainer;\n /** The object that is built with the instances of this container. */\n _customObject: gdjs.CustomRuntimeObject;\n _isLoaded: boolean = false;\n\n /**\n * @param parent the parent container that contains the object associated\n * with this container.\n * @param customObject the object that is built with the instances of this\n * container.\n */\n constructor(\n parent: gdjs.RuntimeInstanceContainer,\n customObject: gdjs.CustomRuntimeObject\n ) {\n super();\n this._parent = parent;\n this._customObject = customObject;\n this._runtimeScene = parent.getScene();\n this._renderer = new gdjs.CustomObjectRenderer(\n customObject,\n this,\n parent\n );\n this._debuggerRenderer = new gdjs.DebuggerRenderer(this);\n }\n\n addLayer(layerData: LayerData) {\n const layer = new gdjs.RuntimeCustomObjectLayer(layerData, this);\n this._layers.put(layerData.name, layer);\n this._orderedLayers.push(layer);\n }\n\n createObject(objectName: string): gdjs.RuntimeObject | null {\n const result = super.createObject(objectName);\n this._customObject.onChildrenLocationChanged();\n return result;\n }\n\n /**\n * Load the container from the given initial configuration.\n * @param customObjectData An object containing the container data.\n * @see gdjs.RuntimeGame#getSceneData\n */\n loadFrom(customObjectData: ObjectData & CustomObjectConfiguration) {\n if (this._isLoaded) {\n this.onDestroyFromScene(this._parent);\n }\n\n const eventsBasedObjectData = this._runtimeScene\n .getGame()\n .getEventsBasedObjectData(customObjectData.type);\n if (!eventsBasedObjectData) {\n logger.error('loadFrom was called without an events-based object');\n return;\n }\n\n // Registering objects\n for (\n let i = 0, len = eventsBasedObjectData.objects.length;\n i < len;\n ++i\n ) {\n const childObjectData = eventsBasedObjectData.objects[i];\n this.registerObject({\n ...childObjectData,\n ...customObjectData.childrenContent[childObjectData.name],\n });\n }\n\n // TODO EBO Remove it when the instance editor is done.\n // Add a default layer\n this.addLayer({\n name: '',\n visibility: true,\n cameras: [\n {\n defaultSize: true,\n defaultViewport: true,\n height: 0,\n viewportBottom: 0,\n viewportLeft: 0,\n viewportRight: 0,\n viewportTop: 0,\n width: 0,\n },\n ],\n effects: [],\n ambientLightColorR: 0,\n ambientLightColorG: 0,\n ambientLightColorB: 0,\n isLightingLayer: false,\n followBaseLayerCamera: false,\n });\n\n // Set up the default z order (for objects created from events)\n this._setLayerDefaultZOrders();\n\n this._isLoaded = true;\n }\n\n /**\n * Called when the container must be updated using the specified\n * objectData. This is the case during hot-reload, and is only called if\n * the object was modified.\n *\n * @param oldCustomObjectData The previous data for the object.\n * @param newCustomObjectData The new data for the object.\n * @returns true if the object was updated, false if it could not\n * (i.e: hot-reload is not supported).\n */\n updateFrom(\n oldCustomObjectData: ObjectData & CustomObjectConfiguration,\n newCustomObjectData: ObjectData & CustomObjectConfiguration\n ): boolean {\n const eventsBasedObjectData = this._runtimeScene\n .getGame()\n .getEventsBasedObjectData(newCustomObjectData.type);\n if (!eventsBasedObjectData) {\n logger.error('updateFrom was called without an events-based object');\n return false;\n }\n\n for (\n let i = 0, len = eventsBasedObjectData.objects.length;\n i < len;\n ++i\n ) {\n const childName = eventsBasedObjectData.objects[i].name;\n const oldChildData = {\n ...eventsBasedObjectData.objects[i],\n ...oldCustomObjectData.childrenContent[childName],\n };\n const newChildData = {\n ...eventsBasedObjectData.objects[i],\n ...newCustomObjectData.childrenContent[childName],\n };\n this.updateObject(newChildData);\n\n for (const child of this.getInstancesOf(childName)) {\n child.updateFromObjectData(oldChildData, newChildData);\n }\n }\n return true;\n }\n\n /**\n * Called when the associated object is destroyed (because it is removed\n * from its parent container or the scene is being unloaded).\n *\n * @param instanceContainer The container owning the object.\n */\n onDestroyFromScene(instanceContainer: gdjs.RuntimeInstanceContainer): void {\n if (!this._isLoaded) {\n return;\n }\n\n // Notify the objects they are being destroyed\n const allInstancesList = this.getAdhocListOfAllInstances();\n for (let i = 0, len = allInstancesList.length; i < len; ++i) {\n const object = allInstancesList[i];\n object.onDestroyFromScene(this);\n }\n\n this._destroy();\n\n this._isLoaded = false;\n }\n\n _destroy() {\n // It should not be necessary to reset these variables, but this help\n // ensuring that all memory related to the container is released immediately.\n super._destroy();\n // @ts-ignore We are deleting the object\n this._onceTriggers = null;\n }\n\n /**\n * Called to update visibility of the renderers of objects\n * rendered on the scene (\"culling\"), update effects (of visible objects)\n * and give a last chance for objects to update before rendering.\n *\n * Visibility is set to false if object is hidden, or if\n * object is too far from the camera of its layer (\"culling\").\n */\n _updateObjectsPreRender() {\n const allInstancesList = this.getAdhocListOfAllInstances();\n // TODO (3D) culling - add support for 3D object culling?\n for (let i = 0, len = allInstancesList.length; i < len; ++i) {\n const object = allInstancesList[i];\n const rendererObject = object.getRendererObject();\n if (rendererObject) {\n rendererObject.visible = !object.isHidden();\n\n // Update effects, only for visible objects.\n if (rendererObject.visible) {\n this.getGame()\n .getEffectsManager()\n .updatePreRender(object.getRendererEffects(), object);\n }\n }\n\n // Set to true to enable debug rendering (look for the implementation in the renderer\n // to see what is rendered).\n if (this._debugDrawEnabled) {\n this._debuggerRenderer.renderDebugDraw(\n allInstancesList,\n this._debugDrawShowHiddenInstances,\n this._debugDrawShowPointsNames,\n this._debugDrawShowCustomPoints\n );\n }\n\n // Perform pre-render update.\n object.updatePreRender(this);\n }\n return;\n }\n\n /**\n * Update the objects before launching the events.\n */\n _updateObjectsPreEvents() {\n const allInstancesList = this.getAdhocListOfAllInstances();\n for (let i = 0, len = allInstancesList.length; i < len; ++i) {\n const obj = allInstancesList[i];\n const elapsedTime = obj.getElapsedTime();\n if (!obj.hasNoForces()) {\n const averageForce = obj.getAverageForce();\n const elapsedTimeInSeconds = elapsedTime / 1000;\n obj.setX(obj.getX() + averageForce.getX() * elapsedTimeInSeconds);\n obj.setY(obj.getY() + averageForce.getY() * elapsedTimeInSeconds);\n obj.update(this);\n obj.updateForces(elapsedTimeInSeconds);\n } else {\n obj.update(this);\n }\n obj.updateTimers(elapsedTime);\n obj.stepBehaviorsPreEvents(this);\n }\n\n // Some behaviors may have request objects to be deleted.\n this._cacheOrClearRemovedInstances();\n }\n\n /**\n * Get the renderer associated to the RuntimeScene.\n */\n getRenderer(): gdjs.CustomObjectRenderer {\n return this._renderer;\n }\n\n getDebuggerRenderer() {\n return this._debuggerRenderer;\n }\n\n getGame() {\n return this._runtimeScene.getGame();\n }\n\n getScene() {\n return this._runtimeScene;\n }\n\n getViewportWidth(): float {\n return this._customObject.getUnscaledWidth();\n }\n\n getViewportHeight(): float {\n return this._customObject.getUnscaledHeight();\n }\n\n getViewportOriginX(): float {\n return this._customObject.getUnscaledCenterX();\n }\n\n getViewportOriginY(): float {\n return this._customObject.getUnscaledCenterY();\n }\n\n onChildrenLocationChanged(): void {\n this._customObject.onChildrenLocationChanged();\n }\n\n convertCoords(x: float, y: float, result: FloatPoint): FloatPoint {\n // The result parameter used to be optional.\n let position = result || [0, 0];\n position = this._parent\n .getLayer(this._customObject.getLayer())\n .convertCoords(x, y, 0, position);\n this._customObject.applyObjectInverseTransformation(\n position[0],\n position[1],\n position\n );\n return position;\n }\n\n convertInverseCoords(\n sceneX: float,\n sceneY: float,\n result: FloatPoint\n ): FloatPoint {\n const position = result || [0, 0];\n this._customObject.applyObjectTransformation(sceneX, sceneY, position);\n return this._parent.convertInverseCoords(\n position[0],\n position[1],\n position\n );\n }\n\n /**\n * Return the time elapsed since the last frame,\n * in milliseconds, for objects on the layer.\n */\n getElapsedTime(): float {\n return this._parent.getElapsedTime();\n }\n }\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["gdjs", "logger", "CustomRuntimeObjectInstanceContainer", "parent", "customObject", "layerData", "layer", "objectName", "result", "customObjectData", "eventsBasedObjectData", "i", "len", "childObjectData", "oldCustomObjectData", "newCustomObjectData", "childName", "oldChildData", "newChildData", "child", "instanceContainer", "allInstancesList", "object", "rendererObject", "obj", "elapsedTime", "averageForce", "elapsedTimeInSeconds", "x", "y", "position", "sceneX", "sceneY"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This is the file handling the startup and lifetime of the game
|
|
3
|
+
* running in Electron Runtime.
|
|
4
|
+
*/
|
|
5
|
+
// Modules to control application life and create native browser window
|
|
6
|
+
const { app, BrowserWindow, shell, Menu } = require("electron");
|
|
7
|
+
|
|
8
|
+
// Initialize `@electron/remote` module
|
|
9
|
+
require('@electron/remote/main').initialize();
|
|
10
|
+
|
|
11
|
+
// Keep a global reference of the window object, if you don't, the window will
|
|
12
|
+
// be closed automatically when the JavaScript object is garbage collected.
|
|
13
|
+
let mainWindow = null;
|
|
14
|
+
|
|
15
|
+
function createWindow() {
|
|
16
|
+
// Create the browser window.
|
|
17
|
+
mainWindow = new BrowserWindow({
|
|
18
|
+
width: 800 /*GDJS_WINDOW_WIDTH*/,
|
|
19
|
+
height: 600 /*GDJS_WINDOW_HEIGHT*/,
|
|
20
|
+
useContentSize: true,
|
|
21
|
+
title: "GDJS_GAME_NAME",
|
|
22
|
+
backgroundColor: '#000000',
|
|
23
|
+
webPreferences: {
|
|
24
|
+
// Allow Node.js API access in renderer process, as long
|
|
25
|
+
// as we've not removed dependency on it and on "@electron/remote".
|
|
26
|
+
nodeIntegration: true,
|
|
27
|
+
contextIsolation: false,
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
// Enable `@electron/remote` module for renderer process
|
|
32
|
+
require('@electron/remote/main').enable(mainWindow.webContents);
|
|
33
|
+
|
|
34
|
+
// Open external link in the OS default browser
|
|
35
|
+
mainWindow.webContents.setWindowOpenHandler(details => {
|
|
36
|
+
shell.openExternal(details.url);
|
|
37
|
+
return { action: 'deny' };
|
|
38
|
+
});
|
|
39
|
+
|
|
40
|
+
// and load the index.html of the app.
|
|
41
|
+
mainWindow.loadFile("app/index.html");
|
|
42
|
+
|
|
43
|
+
Menu.setApplicationMenu(null);
|
|
44
|
+
|
|
45
|
+
// Open the DevTools.
|
|
46
|
+
// mainWindow.webContents.openDevTools()
|
|
47
|
+
|
|
48
|
+
// Emitted when the window is closed.
|
|
49
|
+
mainWindow.on("closed", function() {
|
|
50
|
+
// Dereference the window object, usually you would store windows
|
|
51
|
+
// in an array if your app supports multi windows, this is the time
|
|
52
|
+
// when you should delete the corresponding element.
|
|
53
|
+
mainWindow = null;
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
// This method will be called when Electron has finished
|
|
58
|
+
// initialization and is ready to create browser windows.
|
|
59
|
+
// Some APIs can only be used after this event occurs.
|
|
60
|
+
app.on("ready", createWindow);
|
|
61
|
+
|
|
62
|
+
// Quit when all windows are closed.
|
|
63
|
+
app.on("window-all-closed", function() {
|
|
64
|
+
app.quit();
|
|
65
|
+
});
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "GDJS_GAME_MANGLED_NAME",
|
|
3
|
+
"main": "main.js",
|
|
4
|
+
"productName": "GDJS_GAME_NAME",
|
|
5
|
+
"description": "GDJS_GAME_NAME",
|
|
6
|
+
"author": "GDJS_GAME_AUTHOR",
|
|
7
|
+
"version": "GDJS_GAME_VERSION",
|
|
8
|
+
"dependencies": {
|
|
9
|
+
"GDJS_EXTENSION_NPM_DEPENDENCY": "0",
|
|
10
|
+
"@electron/remote": "^2.0.8"
|
|
11
|
+
},
|
|
12
|
+
"scripts": {
|
|
13
|
+
"start": "electron main.js",
|
|
14
|
+
"build": "electron-builder"
|
|
15
|
+
},
|
|
16
|
+
"devDependencies": {
|
|
17
|
+
"electron": "18.2.2",
|
|
18
|
+
"electron-builder": "22.11.11"
|
|
19
|
+
},
|
|
20
|
+
"build": {
|
|
21
|
+
"appId": "GDJS_GAME_PACKAGE_NAME",
|
|
22
|
+
"directories": {
|
|
23
|
+
"buildResources": "buildResources"
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var gdjs;(o=>{const r=s=>s===void 0?100:s<=0?1:s;class h extends o.RuntimeObject{_z=0;_originalWidth;_originalHeight;_originalDepth;_width;_height;_depth;_flippedX=!1;_flippedY=!1;_flippedZ=!1;_rotationX=0;_rotationY=0;static _temporaryVector=new THREE.Vector3;constructor(t,e){super(t,e),this._width=this._originalWidth=r(e.content.width),this._height=this._originalHeight=r(e.content.height),this._depth=this._originalDepth=r(e.content.depth)}getRendererObject(){return null}get3DRendererObject(){return this.getRenderer().get3DRendererObject()}updateFromObjectData(t,e){return this._setOriginalWidth(r(e.content.width)),this._setOriginalHeight(r(e.content.height)),this._setOriginalDepth(r(e.content.depth)),!0}extraInitializationFromInitialInstance(t){t.customSize&&(this.setWidth(t.width),this.setHeight(t.height)),t.depth!==void 0&&this.setDepth(t.depth)}setX(t){super.setX(t),this.getRenderer().updatePosition()}setY(t){super.setY(t),this.getRenderer().updatePosition()}setZ(t){t!==this._z&&(this._z=t,this.getRenderer().updatePosition())}getZ(){return this._z}setAngle(t){super.setAngle(t),this.getRenderer().updateRotation()}setRotationX(t){this._rotationX=t,this.getRenderer().updateRotation()}setRotationY(t){this._rotationY=t,this.getRenderer().updateRotation()}getRotationX(){return this._rotationX}getRotationY(){return this._rotationY}turnAroundX(t){const e=o.RuntimeObject3D._temporaryVector;e.set(1,0,0);const i=this.getRenderer().get3DRendererObject();i.rotateOnWorldAxis(e,o.toRad(t)),this._rotationX=o.toDegrees(i.rotation.x),this._rotationY=o.toDegrees(i.rotation.y),this.setAngle(o.toDegrees(i.rotation.z))}turnAroundY(t){const e=o.RuntimeObject3D._temporaryVector;e.set(0,1,0);const i=this.getRenderer().get3DRendererObject();i.rotateOnWorldAxis(e,o.toRad(t)),this._rotationX=o.toDegrees(i.rotation.x),this._rotationY=o.toDegrees(i.rotation.y),this.setAngle(o.toDegrees(i.rotation.z))}turnAroundZ(t){const e=o.RuntimeObject3D._temporaryVector;e.set(0,0,1);const i=this.getRenderer().get3DRendererObject();i.rotateOnWorldAxis(e,o.toRad(t)),this._rotationX=o.toDegrees(i.rotation.x),this._rotationY=o.toDegrees(i.rotation.y),this.setAngle(o.toDegrees(i.rotation.z))}getWidth(){return this._width}getHeight(){return this._height}getDepth(){return this._depth}setWidth(t){this._width!==t&&(this._width=t,this.getRenderer().updateSize(),this.invalidateHitboxes())}setHeight(t){this._height!==t&&(this._height=t,this.getRenderer().updateSize(),this.invalidateHitboxes())}setDepth(t){this._depth!==t&&(this._depth=t,this.getRenderer().updateSize())}_getOriginalWidth(){return this._originalWidth}_getOriginalHeight(){return this._originalHeight}_getOriginalDepth(){return this._originalDepth}_setOriginalWidth(t){t<=0&&(t=1);const e=this._originalWidth;this._originalWidth=t,e===this._width&&this.setWidth(t)}_setOriginalHeight(t){t<=0&&(t=1);const e=this._originalHeight;this._originalHeight=t,e===this._height&&this.setHeight(t)}_setOriginalDepth(t){t<=0&&(t=1);const e=this._originalDepth;this._originalDepth=t,e===this._depth&&this.setDepth(t)}setScale(t){this.setScaleX(t),this.setScaleY(t),this.setScaleZ(t)}setScaleX(t){t<0&&(t=0),this.setWidth(this._originalWidth*t)}setScaleY(t){t<0&&(t=0),this.setHeight(this._originalHeight*t)}setScaleZ(t){t<0&&(t=0),this.setDepth(this._originalDepth*t)}getScale(){const t=this.getScaleX(),e=this.getScaleY(),i=this.getScaleZ();return t===e&&t===i?t:Math.pow(t*e*i,1/3)}getScaleX(){return Math.abs(this._width/this._originalWidth)}getScaleY(){return Math.abs(this._height/this._originalHeight)}getScaleZ(){return Math.abs(this._depth/this._originalDepth)}flipX(t){t!==this._flippedX&&(this._flippedX=t,this.getRenderer().updateSize())}flipY(t){t!==this._flippedY&&(this._flippedY=t,this.getRenderer().updateSize())}flipZ(t){t!==this._flippedZ&&(this._flippedZ=t,this.getRenderer().updateSize())}isFlippedX(){return this._flippedX}isFlippedY(){return this._flippedY}isFlippedZ(){return this._flippedZ}hide(t){super.hide(t),this.getRenderer().updateVisibility()}}o.RuntimeObject3D=h})(gdjs||={});
|
|
2
|
+
//# sourceMappingURL=A_RuntimeObject3D.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../GDevelop/Extensions/3D/A_RuntimeObject3D.ts"],
|
|
4
|
+
"sourcesContent": ["namespace gdjs {\n export interface Object3DDataContent {\n width: float;\n height: float;\n depth: float;\n }\n /** Base parameters for {@link gdjs.RuntimeObject3D} */\n export interface Object3DData extends ObjectData {\n /** The base parameters of the RuntimeObject3D */\n content: Object3DDataContent;\n }\n\n const getValidDimensionValue = (value: float | undefined) =>\n value === undefined ? 100 : value <= 0 ? 1 : value;\n\n /**\n * Base class for 3D objects.\n */\n export abstract class RuntimeObject3D extends gdjs.RuntimeObject {\n /**\n * Position on the Z axis.\n */\n private _z: float = 0;\n /**\n * `_width` takes this value when the scale equals 1.\n *\n * It can't be 0.\n */\n private _originalWidth: float;\n /**\n * `_height` takes this value when the scale equals 1.\n *\n * It can't be 0.\n */\n private _originalHeight: float;\n /**\n * `depth` takes this value when the scale equals 1.\n *\n * It can't be 0.\n */\n private _originalDepth: float;\n private _width: float;\n private _height: float;\n private _depth: float;\n private _flippedX: boolean = false;\n private _flippedY: boolean = false;\n private _flippedZ: boolean = false;\n /**\n * Euler angle with the `ZYX` order.\n *\n * Note that `_rotationZ` is `angle` from `gdjs.RuntimeObject`.\n */\n private _rotationX: float = 0;\n /**\n * Euler angle with the `ZYX` order.\n *\n * Note that `_rotationZ` is `angle` from `gdjs.RuntimeObject`.\n */\n private _rotationY: float = 0;\n private static _temporaryVector = new THREE.Vector3();\n\n constructor(\n instanceContainer: gdjs.RuntimeInstanceContainer,\n objectData: Object3DData\n ) {\n super(instanceContainer, objectData);\n // TODO Should 0 be replaced by 0.01 instead of using the default value?\n this._width = this._originalWidth = getValidDimensionValue(\n objectData.content.width\n );\n this._height = this._originalHeight = getValidDimensionValue(\n objectData.content.height\n );\n this._depth = this._originalDepth = getValidDimensionValue(\n objectData.content.depth\n );\n }\n\n abstract getRenderer(): gdjs.RuntimeObject3DRenderer;\n\n getRendererObject() {\n return null;\n }\n\n get3DRendererObject() {\n return this.getRenderer().get3DRendererObject();\n }\n\n updateFromObjectData(\n oldObjectData: Object3DData,\n newObjectData: Object3DData\n ): boolean {\n // There is no need to check if they changed because events can't modify them.\n this._setOriginalWidth(\n getValidDimensionValue(newObjectData.content.width)\n );\n this._setOriginalHeight(\n getValidDimensionValue(newObjectData.content.height)\n );\n this._setOriginalDepth(\n getValidDimensionValue(newObjectData.content.depth)\n );\n return true;\n }\n\n extraInitializationFromInitialInstance(initialInstanceData: InstanceData) {\n if (initialInstanceData.customSize) {\n this.setWidth(initialInstanceData.width);\n this.setHeight(initialInstanceData.height);\n }\n if (initialInstanceData.depth !== undefined)\n this.setDepth(initialInstanceData.depth);\n }\n\n setX(x: float): void {\n super.setX(x);\n this.getRenderer().updatePosition();\n }\n\n setY(y: float): void {\n super.setY(y);\n this.getRenderer().updatePosition();\n }\n\n /**\n * Set the object position on the Z axis.\n */\n setZ(z: float): void {\n if (z === this._z) return;\n this._z = z;\n this.getRenderer().updatePosition();\n }\n\n /**\n * Get the object position on the Z axis.\n */\n getZ(): float {\n return this._z;\n }\n\n setAngle(angle: float): void {\n super.setAngle(angle);\n this.getRenderer().updateRotation();\n }\n\n /**\n * Set the object rotation on the X axis.\n *\n * This is an Euler angle. Objects use the `ZYX` order.\n */\n setRotationX(angle: float): void {\n this._rotationX = angle;\n this.getRenderer().updateRotation();\n }\n\n /**\n * Set the object rotation on the Y axis.\n *\n * This is an Euler angle. Objects use the `ZYX` order.\n */\n setRotationY(angle: float): void {\n this._rotationY = angle;\n this.getRenderer().updateRotation();\n }\n\n /**\n * Get the object rotation on the X axis.\n *\n * This is an Euler angle. Objects use the `ZYX` order.\n */\n getRotationX(): float {\n return this._rotationX;\n }\n\n /**\n * Get the object rotation on the Y axis.\n *\n * This is an Euler angle. Objects use the `ZYX` order.\n */\n getRotationY(): float {\n return this._rotationY;\n }\n\n /**\n * Turn the object around the scene x axis at its center.\n * @param deltaAngle the rotation angle\n */\n turnAroundX(deltaAngle: float): void {\n const axisX = gdjs.RuntimeObject3D._temporaryVector;\n axisX.set(1, 0, 0);\n\n const mesh = this.getRenderer().get3DRendererObject();\n mesh.rotateOnWorldAxis(axisX, gdjs.toRad(deltaAngle));\n this._rotationX = gdjs.toDegrees(mesh.rotation.x);\n this._rotationY = gdjs.toDegrees(mesh.rotation.y);\n this.setAngle(gdjs.toDegrees(mesh.rotation.z));\n }\n\n /**\n * Turn the object around the scene y axis at its center.\n * @param deltaAngle the rotation angle\n */\n turnAroundY(deltaAngle: float): void {\n const axisY = gdjs.RuntimeObject3D._temporaryVector;\n axisY.set(0, 1, 0);\n\n const mesh = this.getRenderer().get3DRendererObject();\n mesh.rotateOnWorldAxis(axisY, gdjs.toRad(deltaAngle));\n this._rotationX = gdjs.toDegrees(mesh.rotation.x);\n this._rotationY = gdjs.toDegrees(mesh.rotation.y);\n this.setAngle(gdjs.toDegrees(mesh.rotation.z));\n }\n\n /**\n * Turn the object around the scene z axis at its center.\n * @param deltaAngle the rotation angle\n */\n turnAroundZ(deltaAngle: float): void {\n const axisZ = gdjs.RuntimeObject3D._temporaryVector;\n axisZ.set(0, 0, 1);\n\n const mesh = this.getRenderer().get3DRendererObject();\n mesh.rotateOnWorldAxis(axisZ, gdjs.toRad(deltaAngle));\n this._rotationX = gdjs.toDegrees(mesh.rotation.x);\n this._rotationY = gdjs.toDegrees(mesh.rotation.y);\n this.setAngle(gdjs.toDegrees(mesh.rotation.z));\n }\n\n getWidth(): float {\n return this._width;\n }\n\n getHeight(): float {\n return this._height;\n }\n\n /**\n * Get the object size on the Z axis (called \"depth\").\n */\n getDepth(): float {\n return this._depth;\n }\n\n setWidth(width: float): void {\n if (this._width === width) return;\n\n this._width = width;\n this.getRenderer().updateSize();\n this.invalidateHitboxes();\n }\n\n setHeight(height: float): void {\n if (this._height === height) return;\n\n this._height = height;\n this.getRenderer().updateSize();\n this.invalidateHitboxes();\n }\n\n /**\n * Set the object size on the Z axis (called \"depth\").\n */\n setDepth(depth: float): void {\n if (this._depth === depth) return;\n\n this._depth = depth;\n this.getRenderer().updateSize();\n }\n\n /**\n * Return the width of the object for a scale of 1.\n *\n * It can't be 0.\n */\n _getOriginalWidth(): float {\n return this._originalWidth;\n }\n\n /**\n * Return the height of the object for a scale of 1.\n *\n * It can't be 0.\n */\n _getOriginalHeight(): float {\n return this._originalHeight;\n }\n\n /**\n * Return the object size on the Z axis (called \"depth\") when the scale equals 1.\n */\n _getOriginalDepth(): float {\n return this._originalDepth;\n }\n\n /**\n * Set the width of the object for a scale of 1.\n */\n _setOriginalWidth(originalWidth: float): void {\n if (originalWidth <= 0) {\n originalWidth = 1;\n }\n const oldOriginalWidth = this._originalWidth;\n this._originalWidth = originalWidth;\n if (oldOriginalWidth === this._width) {\n this.setWidth(originalWidth);\n }\n }\n\n /**\n * Set the height of the object for a scale of 1.\n */\n _setOriginalHeight(originalHeight: float): void {\n if (originalHeight <= 0) {\n originalHeight = 1;\n }\n const oldOriginalHeight = this._originalHeight;\n this._originalHeight = originalHeight;\n if (oldOriginalHeight === this._height) {\n this.setHeight(originalHeight);\n }\n }\n\n /**\n * Set the object size on the Z axis (called \"depth\") when the scale equals 1.\n */\n _setOriginalDepth(originalDepth: float): void {\n if (originalDepth <= 0) {\n originalDepth = 1;\n }\n const oldOriginalDepth = this._originalDepth;\n this._originalDepth = originalDepth;\n if (oldOriginalDepth === this._depth) {\n this.setDepth(originalDepth);\n }\n }\n\n /**\n * Change the scale on X, Y and Z axis of the object.\n *\n * @param newScale The new scale (must be greater than 0).\n */\n setScale(newScale: number): void {\n this.setScaleX(newScale);\n this.setScaleY(newScale);\n this.setScaleZ(newScale);\n }\n\n /**\n * Change the scale on X axis of the object (changing its width).\n *\n * @param newScale The new scale (must be greater than 0).\n */\n setScaleX(newScale: number): void {\n if (newScale < 0) {\n newScale = 0;\n }\n this.setWidth(this._originalWidth * newScale);\n }\n\n /**\n * Change the scale on Y axis of the object (changing its height).\n *\n * @param newScale The new scale (must be greater than 0).\n */\n setScaleY(newScale: number): void {\n if (newScale < 0) {\n newScale = 0;\n }\n this.setHeight(this._originalHeight * newScale);\n }\n\n /**\n * Change the scale on Z axis of the object (changing its height).\n *\n * @param newScale The new scale (must be greater than 0).\n */\n setScaleZ(newScale: number): void {\n if (newScale < 0) {\n newScale = 0;\n }\n this.setDepth(this._originalDepth * newScale);\n }\n\n /**\n * Get the scale of the object (or the geometric average of X, Y and Z scale in case they are different).\n *\n * @return the scale of the object (or the geometric average of X, Y and Z scale in case they are different).\n */\n getScale(): number {\n const scaleX = this.getScaleX();\n const scaleY = this.getScaleY();\n const scaleZ = this.getScaleZ();\n return scaleX === scaleY && scaleX === scaleZ\n ? scaleX\n : Math.pow(scaleX * scaleY * scaleZ, 1 / 3);\n }\n\n /**\n * Get the scale of the object on X axis.\n *\n * @return the scale of the object on X axis\n */\n getScaleX(): float {\n return Math.abs(this._width / this._originalWidth);\n }\n\n /**\n * Get the scale of the object on Y axis.\n *\n * @return the scale of the object on Y axis\n */\n getScaleY(): float {\n return Math.abs(this._height / this._originalHeight);\n }\n\n /**\n * Get the scale of the object on Z axis.\n *\n * @return the scale of the object on Z axis\n */\n getScaleZ(): float {\n return Math.abs(this._depth / this._originalDepth);\n }\n\n flipX(enable: boolean) {\n if (enable !== this._flippedX) {\n this._flippedX = enable;\n this.getRenderer().updateSize();\n }\n }\n\n flipY(enable: boolean) {\n if (enable !== this._flippedY) {\n this._flippedY = enable;\n this.getRenderer().updateSize();\n }\n }\n\n flipZ(enable: boolean) {\n if (enable !== this._flippedZ) {\n this._flippedZ = enable;\n this.getRenderer().updateSize();\n }\n }\n\n isFlippedX(): boolean {\n return this._flippedX;\n }\n\n isFlippedY(): boolean {\n return this._flippedY;\n }\n\n isFlippedZ(): boolean {\n return this._flippedZ;\n }\n\n hide(enable: boolean): void {\n super.hide(enable);\n this.getRenderer().updateVisibility();\n }\n }\n}\n"],
|
|
5
|
+
"mappings": "AAAA,IAAU,MAAAA,GAAV,CAYE,MAAMC,EAA0BC,GAC9BA,IAAU,OAAY,IAAMA,GAAS,EAAI,EAAIA,EAKxC,MAAeC,UAAwBH,EAAK,aAAc,CAIvD,GAAY,EAMZ,eAMA,gBAMA,eACA,OACA,QACA,OACA,UAAqB,GACrB,UAAqB,GACrB,UAAqB,GAMrB,WAAoB,EAMpB,WAAoB,EAC5B,OAAe,iBAAmB,IAAI,MAAM,QAE5C,YACEI,EACAC,EACA,CACA,MAAMD,EAAmBC,CAAU,EAEnC,KAAK,OAAS,KAAK,eAAiBJ,EAClCI,EAAW,QAAQ,KACrB,EACA,KAAK,QAAU,KAAK,gBAAkBJ,EACpCI,EAAW,QAAQ,MACrB,EACA,KAAK,OAAS,KAAK,eAAiBJ,EAClCI,EAAW,QAAQ,KACrB,CACF,CAIA,mBAAoB,CAClB,OAAO,IACT,CAEA,qBAAsB,CACpB,OAAO,KAAK,YAAY,EAAE,oBAAoB,CAChD,CAEA,qBACEC,EACAC,EACS,CAET,YAAK,kBACHN,EAAuBM,EAAc,QAAQ,KAAK,CACpD,EACA,KAAK,mBACHN,EAAuBM,EAAc,QAAQ,MAAM,CACrD,EACA,KAAK,kBACHN,EAAuBM,EAAc,QAAQ,KAAK,CACpD,EACO,EACT,CAEA,uCAAuCC,EAAmC,CACpEA,EAAoB,aACtB,KAAK,SAASA,EAAoB,KAAK,EACvC,KAAK,UAAUA,EAAoB,MAAM,GAEvCA,EAAoB,QAAU,QAChC,KAAK,SAASA,EAAoB,KAAK,CAC3C,CAEA,KAAKC,EAAgB,CACnB,MAAM,KAAKA,CAAC,EACZ,KAAK,YAAY,EAAE,eAAe,CACpC,CAEA,KAAKC,EAAgB,CACnB,MAAM,KAAKA,CAAC,EACZ,KAAK,YAAY,EAAE,eAAe,CACpC,CAKA,KAAKC,EAAgB,CACfA,IAAM,KAAK,KACf,KAAK,GAAKA,EACV,KAAK,YAAY,EAAE,eAAe,EACpC,CAKA,MAAc,CACZ,OAAO,KAAK,EACd,CAEA,SAASC,EAAoB,CAC3B,MAAM,SAASA,CAAK,EACpB,KAAK,YAAY,EAAE,eAAe,CACpC,CAOA,aAAaA,EAAoB,CAC/B,KAAK,WAAaA,EAClB,KAAK,YAAY,EAAE,eAAe,CACpC,CAOA,aAAaA,EAAoB,CAC/B,KAAK,WAAaA,EAClB,KAAK,YAAY,EAAE,eAAe,CACpC,CAOA,cAAsB,CACpB,OAAO,KAAK,UACd,CAOA,cAAsB,CACpB,OAAO,KAAK,UACd,CAMA,YAAYC,EAAyB,CACnC,MAAMC,EAAQd,EAAK,gBAAgB,iBACnCc,EAAM,IAAI,EAAG,EAAG,CAAC,EAEjB,MAAMC,EAAO,KAAK,YAAY,EAAE,oBAAoB,EACpDA,EAAK,kBAAkBD,EAAOd,EAAK,MAAMa,CAAU,CAAC,EACpD,KAAK,WAAab,EAAK,UAAUe,EAAK,SAAS,CAAC,EAChD,KAAK,WAAaf,EAAK,UAAUe,EAAK,SAAS,CAAC,EAChD,KAAK,SAASf,EAAK,UAAUe,EAAK,SAAS,CAAC,CAAC,CAC/C,CAMA,YAAYF,EAAyB,CACnC,MAAMG,EAAQhB,EAAK,gBAAgB,iBACnCgB,EAAM,IAAI,EAAG,EAAG,CAAC,EAEjB,MAAMD,EAAO,KAAK,YAAY,EAAE,oBAAoB,EACpDA,EAAK,kBAAkBC,EAAOhB,EAAK,MAAMa,CAAU,CAAC,EACpD,KAAK,WAAab,EAAK,UAAUe,EAAK,SAAS,CAAC,EAChD,KAAK,WAAaf,EAAK,UAAUe,EAAK,SAAS,CAAC,EAChD,KAAK,SAASf,EAAK,UAAUe,EAAK,SAAS,CAAC,CAAC,CAC/C,CAMA,YAAYF,EAAyB,CACnC,MAAMI,EAAQjB,EAAK,gBAAgB,iBACnCiB,EAAM,IAAI,EAAG,EAAG,CAAC,EAEjB,MAAMF,EAAO,KAAK,YAAY,EAAE,oBAAoB,EACpDA,EAAK,kBAAkBE,EAAOjB,EAAK,MAAMa,CAAU,CAAC,EACpD,KAAK,WAAab,EAAK,UAAUe,EAAK,SAAS,CAAC,EAChD,KAAK,WAAaf,EAAK,UAAUe,EAAK,SAAS,CAAC,EAChD,KAAK,SAASf,EAAK,UAAUe,EAAK,SAAS,CAAC,CAAC,CAC/C,CAEA,UAAkB,CAChB,OAAO,KAAK,MACd,CAEA,WAAmB,CACjB,OAAO,KAAK,OACd,CAKA,UAAkB,CAChB,OAAO,KAAK,MACd,CAEA,SAASG,EAAoB,CACvB,KAAK,SAAWA,IAEpB,KAAK,OAASA,EACd,KAAK,YAAY,EAAE,WAAW,EAC9B,KAAK,mBAAmB,EAC1B,CAEA,UAAUC,EAAqB,CACzB,KAAK,UAAYA,IAErB,KAAK,QAAUA,EACf,KAAK,YAAY,EAAE,WAAW,EAC9B,KAAK,mBAAmB,EAC1B,CAKA,SAASC,EAAoB,CACvB,KAAK,SAAWA,IAEpB,KAAK,OAASA,EACd,KAAK,YAAY,EAAE,WAAW,EAChC,CAOA,mBAA2B,CACzB,OAAO,KAAK,cACd,CAOA,oBAA4B,CAC1B,OAAO,KAAK,eACd,CAKA,mBAA2B,CACzB,OAAO,KAAK,cACd,CAKA,kBAAkBC,EAA4B,CACxCA,GAAiB,IACnBA,EAAgB,GAElB,MAAMC,EAAmB,KAAK,eAC9B,KAAK,eAAiBD,EAClBC,IAAqB,KAAK,QAC5B,KAAK,SAASD,CAAa,CAE/B,CAKA,mBAAmBE,EAA6B,CAC1CA,GAAkB,IACpBA,EAAiB,GAEnB,MAAMC,EAAoB,KAAK,gBAC/B,KAAK,gBAAkBD,EACnBC,IAAsB,KAAK,SAC7B,KAAK,UAAUD,CAAc,CAEjC,CAKA,kBAAkBE,EAA4B,CACxCA,GAAiB,IACnBA,EAAgB,GAElB,MAAMC,EAAmB,KAAK,eAC9B,KAAK,eAAiBD,EAClBC,IAAqB,KAAK,QAC5B,KAAK,SAASD,CAAa,CAE/B,CAOA,SAASE,EAAwB,CAC/B,KAAK,UAAUA,CAAQ,EACvB,KAAK,UAAUA,CAAQ,EACvB,KAAK,UAAUA,CAAQ,CACzB,CAOA,UAAUA,EAAwB,CAC5BA,EAAW,IACbA,EAAW,GAEb,KAAK,SAAS,KAAK,eAAiBA,CAAQ,CAC9C,CAOA,UAAUA,EAAwB,CAC5BA,EAAW,IACbA,EAAW,GAEb,KAAK,UAAU,KAAK,gBAAkBA,CAAQ,CAChD,CAOA,UAAUA,EAAwB,CAC5BA,EAAW,IACbA,EAAW,GAEb,KAAK,SAAS,KAAK,eAAiBA,CAAQ,CAC9C,CAOA,UAAmB,CACjB,MAAMC,EAAS,KAAK,UAAU,EACxBC,EAAS,KAAK,UAAU,EACxBC,EAAS,KAAK,UAAU,EAC9B,OAAOF,IAAWC,GAAUD,IAAWE,EACnCF,EACA,KAAK,IAAIA,EAASC,EAASC,EAAQ,EAAI,CAAC,CAC9C,CAOA,WAAmB,CACjB,OAAO,KAAK,IAAI,KAAK,OAAS,KAAK,cAAc,CACnD,CAOA,WAAmB,CACjB,OAAO,KAAK,IAAI,KAAK,QAAU,KAAK,eAAe,CACrD,CAOA,WAAmB,CACjB,OAAO,KAAK,IAAI,KAAK,OAAS,KAAK,cAAc,CACnD,CAEA,MAAMC,EAAiB,CACjBA,IAAW,KAAK,YAClB,KAAK,UAAYA,EACjB,KAAK,YAAY,EAAE,WAAW,EAElC,CAEA,MAAMA,EAAiB,CACjBA,IAAW,KAAK,YAClB,KAAK,UAAYA,EACjB,KAAK,YAAY,EAAE,WAAW,EAElC,CAEA,MAAMA,EAAiB,CACjBA,IAAW,KAAK,YAClB,KAAK,UAAYA,EACjB,KAAK,YAAY,EAAE,WAAW,EAElC,CAEA,YAAsB,CACpB,OAAO,KAAK,SACd,CAEA,YAAsB,CACpB,OAAO,KAAK,SACd,CAEA,YAAsB,CACpB,OAAO,KAAK,SACd,CAEA,KAAKA,EAAuB,CAC1B,MAAM,KAAKA,CAAM,EACjB,KAAK,YAAY,EAAE,iBAAiB,CACtC,CACF,CA3bO/B,EAAe,gBAAAG,IAlBd",
|
|
6
|
+
"names": ["gdjs", "getValidDimensionValue", "value", "RuntimeObject3D", "instanceContainer", "objectData", "oldObjectData", "newObjectData", "initialInstanceData", "x", "y", "z", "angle", "deltaAngle", "axisX", "mesh", "axisY", "axisZ", "width", "height", "depth", "originalWidth", "oldOriginalWidth", "originalHeight", "oldOriginalHeight", "originalDepth", "oldOriginalDepth", "newScale", "scaleX", "scaleY", "scaleZ", "enable"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var gdjs;(e=>{class o{_object;_threeObject3D;constructor(t,i,s){this._object=t,this._threeObject3D=s,this._threeObject3D.rotation.order="ZYX",i.getLayer("").getRenderer().add3DRendererObject(this._threeObject3D)}get3DRendererObject(){return this._threeObject3D}updatePosition(){this._threeObject3D.position.set(this._object.x+this._object.getWidth()/2,this._object.y+this._object.getHeight()/2,this._object.getZ()+this._object.getDepth()/2)}updateRotation(){this._threeObject3D.rotation.set(e.toRad(this._object.getRotationX()),e.toRad(this._object.getRotationY()),e.toRad(this._object.angle))}updateSize(){const t=this._object;this._threeObject3D.scale.set(t.isFlippedX()?-t.getWidth():t.getWidth(),t.isFlippedY()?-t.getHeight():t.getHeight(),t.isFlippedZ()?-t.getDepth():t.getDepth()),this.updatePosition()}updateVisibility(){this._threeObject3D.visible=!this._object.isHidden()}}e.RuntimeObject3DRenderer=o})(gdjs||={});
|
|
2
|
+
//# sourceMappingURL=A_RuntimeObject3DRenderer.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../GDevelop/Extensions/3D/A_RuntimeObject3DRenderer.ts"],
|
|
4
|
+
"sourcesContent": ["namespace gdjs {\n export abstract class RuntimeObject3DRenderer {\n protected _object: gdjs.RuntimeObject3D;\n private _threeObject3D: THREE.Object3D;\n\n constructor(\n runtimeObject: gdjs.RuntimeObject3D,\n instanceContainer: gdjs.RuntimeInstanceContainer,\n threeObject3D: THREE.Object3D\n ) {\n this._object = runtimeObject;\n this._threeObject3D = threeObject3D;\n this._threeObject3D.rotation.order = 'ZYX';\n\n instanceContainer\n .getLayer('')\n .getRenderer()\n .add3DRendererObject(this._threeObject3D);\n }\n\n get3DRendererObject() {\n return this._threeObject3D;\n }\n\n updatePosition() {\n this._threeObject3D.position.set(\n this._object.x + this._object.getWidth() / 2,\n this._object.y + this._object.getHeight() / 2,\n this._object.getZ() + this._object.getDepth() / 2\n );\n }\n\n updateRotation() {\n this._threeObject3D.rotation.set(\n gdjs.toRad(this._object.getRotationX()),\n gdjs.toRad(this._object.getRotationY()),\n gdjs.toRad(this._object.angle)\n );\n }\n\n updateSize() {\n const object = this._object;\n this._threeObject3D.scale.set(\n object.isFlippedX() ? -object.getWidth() : object.getWidth(),\n object.isFlippedY() ? -object.getHeight() : object.getHeight(),\n object.isFlippedZ() ? -object.getDepth() : object.getDepth()\n );\n this.updatePosition();\n }\n\n updateVisibility() {\n this._threeObject3D.visible = !this._object.isHidden();\n }\n }\n}\n"],
|
|
5
|
+
"mappings": "AAAA,IAAU,MAAAA,GAAV,CACS,MAAeC,CAAwB,CAClC,QACF,eAER,YACEC,EACAC,EACAC,EACA,CACA,KAAK,QAAUF,EACf,KAAK,eAAiBE,EACtB,KAAK,eAAe,SAAS,MAAQ,MAErCD,EACG,SAAS,EAAE,EACX,YAAY,EACZ,oBAAoB,KAAK,cAAc,CAC5C,CAEA,qBAAsB,CACpB,OAAO,KAAK,cACd,CAEA,gBAAiB,CACf,KAAK,eAAe,SAAS,IAC3B,KAAK,QAAQ,EAAI,KAAK,QAAQ,SAAS,EAAI,EAC3C,KAAK,QAAQ,EAAI,KAAK,QAAQ,UAAU,EAAI,EAC5C,KAAK,QAAQ,KAAK,EAAI,KAAK,QAAQ,SAAS,EAAI,CAClD,CACF,CAEA,gBAAiB,CACf,KAAK,eAAe,SAAS,IAC3BH,EAAK,MAAM,KAAK,QAAQ,aAAa,CAAC,EACtCA,EAAK,MAAM,KAAK,QAAQ,aAAa,CAAC,EACtCA,EAAK,MAAM,KAAK,QAAQ,KAAK,CAC/B,CACF,CAEA,YAAa,CACX,MAAMK,EAAS,KAAK,QACpB,KAAK,eAAe,MAAM,IACxBA,EAAO,WAAW,EAAI,CAACA,EAAO,SAAS,EAAIA,EAAO,SAAS,EAC3DA,EAAO,WAAW,EAAI,CAACA,EAAO,UAAU,EAAIA,EAAO,UAAU,EAC7DA,EAAO,WAAW,EAAI,CAACA,EAAO,SAAS,EAAIA,EAAO,SAAS,CAC7D,EACA,KAAK,eAAe,CACtB,CAEA,kBAAmB,CACjB,KAAK,eAAe,QAAU,CAAC,KAAK,QAAQ,SAAS,CACvD,CACF,CApDOL,EAAe,wBAAAC,IADd",
|
|
6
|
+
"names": ["gdjs", "RuntimeObject3DRenderer", "runtimeObject", "instanceContainer", "threeObject3D", "object"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var gdjs;(r=>r.PixiFiltersTools.registerFilterCreator("Scene3D::AmbientLight",new class{makeFilter(i,s){return new class{light;_isEnabled;constructor(){this.light=new THREE.AmbientLight,this._isEnabled=!1}isEnabled(e){return this._isEnabled}setEnabled(e,t){return this._isEnabled===t?!0:t?this.applyEffect(e):this.removeEffect(e)}applyEffect(e){const t=e.get3DRendererObject();return t?(t.add(this.light),this._isEnabled=!0,!0):!1}removeEffect(e){const t=e.get3DRendererObject();return t?(t.remove(this.light),this._isEnabled=!1,!0):!1}updatePreRender(e){}updateDoubleParameter(e,t){e==="intensity"&&(this.light.intensity=t)}updateStringParameter(e,t){e==="color"&&(this.light.color=new THREE.Color(r.PixiFiltersTools.rgbOrHexToHexNumber(t)))}updateBooleanParameter(e,t){}}}}))(gdjs||={});
|
|
2
|
+
//# sourceMappingURL=AmbientLight.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../GDevelop/Extensions/3D/AmbientLight.ts"],
|
|
4
|
+
"sourcesContent": ["namespace gdjs {\n gdjs.PixiFiltersTools.registerFilterCreator(\n 'Scene3D::AmbientLight',\n new (class implements gdjs.PixiFiltersTools.FilterCreator {\n makeFilter(\n target: EffectsTarget,\n effectData: EffectData\n ): gdjs.PixiFiltersTools.Filter {\n return new (class implements gdjs.PixiFiltersTools.Filter {\n light: THREE.AmbientLight;\n _isEnabled: boolean;\n\n constructor() {\n this.light = new THREE.AmbientLight();\n this._isEnabled = false;\n }\n\n isEnabled(target: EffectsTarget): boolean {\n return this._isEnabled;\n }\n setEnabled(target: EffectsTarget, enabled: boolean): boolean {\n if (this._isEnabled === enabled) {\n return true;\n }\n if (enabled) {\n return this.applyEffect(target);\n } else {\n return this.removeEffect(target);\n }\n }\n applyEffect(target: EffectsTarget): boolean {\n const scene = target.get3DRendererObject() as\n | THREE.Scene\n | null\n | undefined;\n if (!scene) {\n return false;\n }\n scene.add(this.light);\n this._isEnabled = true;\n return true;\n }\n removeEffect(target: EffectsTarget): boolean {\n const scene = target.get3DRendererObject() as\n | THREE.Scene\n | null\n | undefined;\n if (!scene) {\n return false;\n }\n scene.remove(this.light);\n this._isEnabled = false;\n return true;\n }\n updatePreRender(target: gdjs.EffectsTarget): any {}\n updateDoubleParameter(parameterName: string, value: number): void {\n if (parameterName === 'intensity') {\n this.light.intensity = value;\n }\n }\n updateStringParameter(parameterName: string, value: string): void {\n if (parameterName === 'color') {\n this.light.color = new THREE.Color(\n gdjs.PixiFiltersTools.rgbOrHexToHexNumber(value)\n );\n }\n }\n updateBooleanParameter(parameterName: string, value: boolean): void {}\n })();\n }\n })()\n );\n}\n"],
|
|
5
|
+
"mappings": "AAAA,IAAU,MAAAA,GACRA,EAAK,iBAAiB,sBACpB,wBACA,IAAK,KAAqD,CACxD,WACEC,EACAC,EAC8B,CAC9B,OAAO,IAAK,KAA8C,CACxD,MACA,WAEA,aAAc,CACZ,KAAK,MAAQ,IAAI,MAAM,aACvB,KAAK,WAAa,EACpB,CAEA,UAAUD,EAAgC,CACxC,OAAO,KAAK,UACd,CACA,WAAWA,EAAuBE,EAA2B,CAC3D,OAAI,KAAK,aAAeA,EACf,GAELA,EACK,KAAK,YAAYF,CAAM,EAEvB,KAAK,aAAaA,CAAM,CAEnC,CACA,YAAYA,EAAgC,CAC1C,MAAMG,EAAQH,EAAO,oBAAoB,EAIzC,OAAKG,GAGLA,EAAM,IAAI,KAAK,KAAK,EACpB,KAAK,WAAa,GACX,IAJE,EAKX,CACA,aAAaH,EAAgC,CAC3C,MAAMG,EAAQH,EAAO,oBAAoB,EAIzC,OAAKG,GAGLA,EAAM,OAAO,KAAK,KAAK,EACvB,KAAK,WAAa,GACX,IAJE,EAKX,CACA,gBAAgBH,EAAiC,CAAC,CAClD,sBAAsBI,EAAuBC,EAAqB,CAC5DD,IAAkB,cACpB,KAAK,MAAM,UAAYC,EAE3B,CACA,sBAAsBD,EAAuBC,EAAqB,CAC5DD,IAAkB,UACpB,KAAK,MAAM,MAAQ,IAAI,MAAM,MAC3BL,EAAK,iBAAiB,oBAAoBM,CAAK,CACjD,EAEJ,CACA,uBAAuBD,EAAuBC,EAAsB,CAAC,CACvE,CACF,CACF,CACF,GAvEQ",
|
|
6
|
+
"names": ["gdjs", "target", "effectData", "enabled", "scene", "parameterName", "value"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var gdjs;(c=>{const i={front:0,back:1,left:2,right:3,top:4,bottom:5};class o extends c.RuntimeObject3D{_renderer;_facesOrientation;_backFaceUpThroughWhichAxisRotation;_shouldUseTransparentTexture;_visibleFacesBitmask;_textureRepeatFacesBitmask;_faceResourceNames;_materialType=c.Cube3DRuntimeObject.MaterialType.Basic;constructor(t,e){super(t,e),this._shouldUseTransparentTexture=e.content.enableTextureTransparency||!1,this._facesOrientation=e.content.facesOrientation||"Y",this._visibleFacesBitmask=0,e.content.frontFaceVisible&&(this._visibleFacesBitmask|=1<<i.front),e.content.backFaceVisible&&(this._visibleFacesBitmask|=1<<i.back),e.content.leftFaceVisible&&(this._visibleFacesBitmask|=1<<i.left),e.content.rightFaceVisible&&(this._visibleFacesBitmask|=1<<i.right),e.content.topFaceVisible&&(this._visibleFacesBitmask|=1<<i.top),e.content.bottomFaceVisible&&(this._visibleFacesBitmask|=1<<i.bottom),this._textureRepeatFacesBitmask=0,e.content.frontFaceResourceRepeat&&(this._textureRepeatFacesBitmask|=1<<i.front),e.content.backFaceResourceRepeat&&(this._textureRepeatFacesBitmask|=1<<i.back),e.content.leftFaceResourceRepeat&&(this._textureRepeatFacesBitmask|=1<<i.left),e.content.rightFaceResourceRepeat&&(this._textureRepeatFacesBitmask|=1<<i.right),e.content.topFaceResourceRepeat&&(this._textureRepeatFacesBitmask|=1<<i.top),e.content.bottomFaceResourceRepeat&&(this._textureRepeatFacesBitmask|=1<<i.bottom),this._backFaceUpThroughWhichAxisRotation=e.content.backFaceUpThroughWhichAxisRotation||"X",this._faceResourceNames=[e.content.frontFaceResourceName,e.content.backFaceResourceName,e.content.leftFaceResourceName,e.content.rightFaceResourceName,e.content.topFaceResourceName,e.content.bottomFaceResourceName],this._materialType=this._convertMaterialType(e.content.materialType),this._renderer=new c.Cube3DRuntimeObjectRenderer(this,t),this.onCreated()}setFaceVisibility(t,e){const s=i[t];s!==void 0&&e!==this.isFaceAtIndexVisible(s)&&(e?this._visibleFacesBitmask|=1<<s:this._visibleFacesBitmask&=~(1<<s),this._renderer.updateFace(s))}setRepeatTextureOnFace(t,e){const s=i[t];s!==void 0&&e!==this.shouldRepeatTextureOnFaceAtIndex(s)&&(e?this._textureRepeatFacesBitmask|=1<<s:this._textureRepeatFacesBitmask&=~(1<<s),this._renderer.updateFace(s))}isFaceVisible(t){const e=i[t];return e===void 0?!1:this.isFaceAtIndexVisible(e)}isFaceAtIndexVisible(t){return(this._visibleFacesBitmask&1<<t)!==0}shouldRepeatTextureOnFaceAtIndex(t){return(this._textureRepeatFacesBitmask&1<<t)!==0}setFaceResourceName(t,e){const s=i[t];s!==void 0&&this._faceResourceNames[s]!==e&&(this._faceResourceNames[s]=e,this._renderer.updateFace(s))}getFaceAtIndexResourceName(t){return this._faceResourceNames[t]}getRenderer(){return this._renderer}getBackFaceUpThroughWhichAxisRotation(){return this._backFaceUpThroughWhichAxisRotation}setBackFaceUpThroughWhichAxisRotation(t){this._backFaceUpThroughWhichAxisRotation=t,this._renderer.updateFace(i.back)}getFacesOrientation(){return this._facesOrientation}setFacesOrientation(t){this._facesOrientation=t,this._renderer.updateFace(i.left),this._renderer.updateFace(i.right),this._renderer.updateFace(i.top)}updateFromObjectData(t,e){return super.updateFromObjectData(t,e),t.content.frontFaceVisible!==e.content.frontFaceVisible&&this.setFaceVisibility("front",e.content.frontFaceVisible),t.content.backFaceVisible!==e.content.backFaceVisible&&this.setFaceVisibility("back",e.content.backFaceVisible),t.content.leftFaceVisible!==e.content.leftFaceVisible&&this.setFaceVisibility("left",e.content.leftFaceVisible),t.content.rightFaceVisible!==e.content.rightFaceVisible&&this.setFaceVisibility("right",e.content.rightFaceVisible),t.content.topFaceVisible!==e.content.topFaceVisible&&this.setFaceVisibility("top",e.content.topFaceVisible),t.content.bottomFaceVisible!==e.content.bottomFaceVisible&&this.setFaceVisibility("bottom",e.content.bottomFaceVisible),t.content.frontFaceResourceName!==e.content.frontFaceResourceName&&this.setFaceResourceName("front",e.content.frontFaceResourceName),t.content.backFaceResourceName!==e.content.backFaceResourceName&&this.setFaceResourceName("back",e.content.backFaceResourceName),t.content.leftFaceResourceName!==e.content.leftFaceResourceName&&this.setFaceResourceName("left",e.content.leftFaceResourceName),t.content.rightFaceResourceName!==e.content.rightFaceResourceName&&this.setFaceResourceName("right",e.content.rightFaceResourceName),t.content.topFaceResourceName!==e.content.topFaceResourceName&&this.setFaceResourceName("top",e.content.topFaceResourceName),t.content.bottomFaceResourceName!==e.content.bottomFaceResourceName&&this.setFaceResourceName("bottom",e.content.bottomFaceResourceName),t.content.frontFaceResourceRepeat!==e.content.frontFaceResourceRepeat&&this.setRepeatTextureOnFace("front",e.content.frontFaceResourceRepeat),t.content.backFaceResourceRepeat!==e.content.backFaceResourceRepeat&&this.setRepeatTextureOnFace("back",e.content.backFaceResourceRepeat),t.content.leftFaceResourceRepeat!==e.content.leftFaceResourceRepeat&&this.setRepeatTextureOnFace("left",e.content.leftFaceResourceRepeat),t.content.rightFaceResourceRepeat!==e.content.rightFaceResourceRepeat&&this.setRepeatTextureOnFace("right",e.content.rightFaceResourceRepeat),t.content.topFaceResourceRepeat!==e.content.topFaceResourceRepeat&&this.setRepeatTextureOnFace("top",e.content.topFaceResourceRepeat),t.content.bottomFaceResourceRepeat!==e.content.bottomFaceResourceRepeat&&this.setRepeatTextureOnFace("bottom",e.content.bottomFaceResourceRepeat),t.content.backFaceUpThroughWhichAxisRotation!==e.content.backFaceUpThroughWhichAxisRotation&&this.setBackFaceUpThroughWhichAxisRotation(e.content.backFaceUpThroughWhichAxisRotation),t.content.facesOrientation!==e.content.facesOrientation&&this.setFacesOrientation(e.content.facesOrientation),t.content.materialType!==e.content.materialType&&this.setMaterialType(e.content.materialType),!0}shouldUseTransparentTexture(){return this._shouldUseTransparentTexture}_convertMaterialType(t){return t==="StandardWithoutMetalness"?c.Cube3DRuntimeObject.MaterialType.StandardWithoutMetalness:c.Cube3DRuntimeObject.MaterialType.Basic}setMaterialType(t){const e=this._convertMaterialType(t);this._materialType!==e&&(this._materialType=e,this._renderer._updateMaterials())}}c.Cube3DRuntimeObject=o,(t=>{let r;(n=>(n[n.Basic=0]="Basic",n[n.StandardWithoutMetalness=1]="StandardWithoutMetalness"))(r=t.MaterialType||={})})(o=c.Cube3DRuntimeObject||={}),c.registerObject("Scene3D::Cube3DObject",c.Cube3DRuntimeObject)})(gdjs||={});
|
|
2
|
+
//# sourceMappingURL=Cube3DRuntimeObject.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../GDevelop/Extensions/3D/Cube3DRuntimeObject.ts"],
|
|
4
|
+
"sourcesContent": ["namespace gdjs {\n /** Base parameters for {@link gdjs.Cube3DRuntimeObject} */\n export interface Cube3DObjectData extends Object3DData {\n /** The base parameters of the Cube3D object */\n content: Object3DDataContent & {\n enableTextureTransparency: boolean;\n facesOrientation: 'Y' | 'Z';\n frontFaceResourceName: string;\n backFaceResourceName: string;\n backFaceUpThroughWhichAxisRotation: 'X' | 'Y';\n leftFaceResourceName: string;\n rightFaceResourceName: string;\n topFaceResourceName: string;\n bottomFaceResourceName: string;\n frontFaceResourceRepeat: boolean;\n backFaceResourceRepeat: boolean;\n leftFaceResourceRepeat: boolean;\n rightFaceResourceRepeat: boolean;\n topFaceResourceRepeat: boolean;\n bottomFaceResourceRepeat: boolean;\n frontFaceVisible: boolean;\n backFaceVisible: boolean;\n leftFaceVisible: boolean;\n rightFaceVisible: boolean;\n topFaceVisible: boolean;\n bottomFaceVisible: boolean;\n materialType: 'Basic' | 'StandardWithoutMetalness';\n };\n }\n\n type FaceName = 'front' | 'back' | 'left' | 'right' | 'top' | 'bottom';\n const faceNameToBitmaskIndex = {\n front: 0,\n back: 1,\n left: 2,\n right: 3,\n top: 4,\n bottom: 5,\n };\n\n /**\n * Shows a 3D box object.\n */\n export class Cube3DRuntimeObject extends gdjs.RuntimeObject3D {\n private _renderer: Cube3DRuntimeObjectRenderer;\n private _facesOrientation: 'Y' | 'Z';\n private _backFaceUpThroughWhichAxisRotation: 'X' | 'Y';\n private _shouldUseTransparentTexture: boolean;\n // `_rotationZ` is `angle` from `gdjs.RuntimeObject`.\n private _visibleFacesBitmask: integer;\n private _textureRepeatFacesBitmask: integer;\n private _faceResourceNames: [\n string,\n string,\n string,\n string,\n string,\n string\n ];\n _materialType: gdjs.Cube3DRuntimeObject.MaterialType =\n gdjs.Cube3DRuntimeObject.MaterialType.Basic;\n\n constructor(\n instanceContainer: gdjs.RuntimeInstanceContainer,\n objectData: Cube3DObjectData\n ) {\n super(instanceContainer, objectData);\n this._shouldUseTransparentTexture =\n objectData.content.enableTextureTransparency || false;\n this._facesOrientation = objectData.content.facesOrientation || 'Y';\n this._visibleFacesBitmask = 0;\n if (objectData.content.frontFaceVisible)\n this._visibleFacesBitmask |= 1 << faceNameToBitmaskIndex['front'];\n if (objectData.content.backFaceVisible)\n this._visibleFacesBitmask |= 1 << faceNameToBitmaskIndex['back'];\n if (objectData.content.leftFaceVisible)\n this._visibleFacesBitmask |= 1 << faceNameToBitmaskIndex['left'];\n if (objectData.content.rightFaceVisible)\n this._visibleFacesBitmask |= 1 << faceNameToBitmaskIndex['right'];\n if (objectData.content.topFaceVisible)\n this._visibleFacesBitmask |= 1 << faceNameToBitmaskIndex['top'];\n if (objectData.content.bottomFaceVisible)\n this._visibleFacesBitmask |= 1 << faceNameToBitmaskIndex['bottom'];\n this._textureRepeatFacesBitmask = 0;\n if (objectData.content.frontFaceResourceRepeat)\n this._textureRepeatFacesBitmask |= 1 << faceNameToBitmaskIndex['front'];\n if (objectData.content.backFaceResourceRepeat)\n this._textureRepeatFacesBitmask |= 1 << faceNameToBitmaskIndex['back'];\n if (objectData.content.leftFaceResourceRepeat)\n this._textureRepeatFacesBitmask |= 1 << faceNameToBitmaskIndex['left'];\n if (objectData.content.rightFaceResourceRepeat)\n this._textureRepeatFacesBitmask |= 1 << faceNameToBitmaskIndex['right'];\n if (objectData.content.topFaceResourceRepeat)\n this._textureRepeatFacesBitmask |= 1 << faceNameToBitmaskIndex['top'];\n if (objectData.content.bottomFaceResourceRepeat)\n this._textureRepeatFacesBitmask |=\n 1 << faceNameToBitmaskIndex['bottom'];\n this._backFaceUpThroughWhichAxisRotation =\n objectData.content.backFaceUpThroughWhichAxisRotation || 'X';\n this._faceResourceNames = [\n objectData.content.frontFaceResourceName,\n objectData.content.backFaceResourceName,\n objectData.content.leftFaceResourceName,\n objectData.content.rightFaceResourceName,\n objectData.content.topFaceResourceName,\n objectData.content.bottomFaceResourceName,\n ];\n this._materialType = this._convertMaterialType(\n objectData.content.materialType\n );\n\n this._renderer = new gdjs.Cube3DRuntimeObjectRenderer(\n this,\n instanceContainer\n );\n\n // *ALWAYS* call `this.onCreated()` at the very end of your object constructor.\n this.onCreated();\n }\n\n /**\n * Sets the visibility of a face of the 3D box.\n *\n * @param faceName - The name of the face to set visibility for.\n * @param value - The visibility value to set.\n */\n setFaceVisibility(faceName: FaceName, enable: boolean) {\n const faceIndex = faceNameToBitmaskIndex[faceName];\n if (faceIndex === undefined) {\n return;\n }\n if (enable === this.isFaceAtIndexVisible(faceIndex)) {\n return;\n }\n\n if (enable) {\n this._visibleFacesBitmask |= 1 << faceIndex;\n } else {\n this._visibleFacesBitmask &= ~(1 << faceIndex);\n }\n this._renderer.updateFace(faceIndex);\n }\n\n /**\n * Sets the texture repeat of a face of the 3D box.\n *\n * @param faceName - The name of the face to set visibility for.\n * @param value - The visibility value to set.\n */\n setRepeatTextureOnFace(faceName: FaceName, enable: boolean) {\n const faceIndex = faceNameToBitmaskIndex[faceName];\n if (faceIndex === undefined) {\n return;\n }\n if (enable === this.shouldRepeatTextureOnFaceAtIndex(faceIndex)) {\n return;\n }\n\n if (enable) {\n this._textureRepeatFacesBitmask |= 1 << faceIndex;\n } else {\n this._textureRepeatFacesBitmask &= ~(1 << faceIndex);\n }\n this._renderer.updateFace(faceIndex);\n }\n\n isFaceVisible(faceName: FaceName): boolean {\n const faceIndex = faceNameToBitmaskIndex[faceName];\n if (faceIndex === undefined) {\n return false;\n }\n\n return this.isFaceAtIndexVisible(faceIndex);\n }\n\n /** @internal */\n isFaceAtIndexVisible(faceIndex): boolean {\n return (this._visibleFacesBitmask & (1 << faceIndex)) !== 0;\n }\n\n /** @internal */\n shouldRepeatTextureOnFaceAtIndex(faceIndex): boolean {\n return (this._textureRepeatFacesBitmask & (1 << faceIndex)) !== 0;\n }\n\n setFaceResourceName(faceName: FaceName, resourceName: string): void {\n const faceIndex = faceNameToBitmaskIndex[faceName];\n if (faceIndex === undefined) {\n return;\n }\n if (this._faceResourceNames[faceIndex] === resourceName) {\n return;\n }\n\n this._faceResourceNames[faceIndex] = resourceName;\n this._renderer.updateFace(faceIndex);\n }\n\n /** @internal */\n getFaceAtIndexResourceName(faceIndex: integer): string {\n return this._faceResourceNames[faceIndex];\n }\n\n getRenderer(): gdjs.RuntimeObject3DRenderer {\n return this._renderer;\n }\n\n getBackFaceUpThroughWhichAxisRotation(): 'X' | 'Y' {\n return this._backFaceUpThroughWhichAxisRotation;\n }\n\n setBackFaceUpThroughWhichAxisRotation(axis: 'X' | 'Y'): void {\n this._backFaceUpThroughWhichAxisRotation = axis;\n this._renderer.updateFace(faceNameToBitmaskIndex['back']);\n }\n\n getFacesOrientation(): 'Y' | 'Z' {\n return this._facesOrientation;\n }\n\n setFacesOrientation(orientation: 'Y' | 'Z'): void {\n this._facesOrientation = orientation;\n this._renderer.updateFace(faceNameToBitmaskIndex['left']);\n this._renderer.updateFace(faceNameToBitmaskIndex['right']);\n this._renderer.updateFace(faceNameToBitmaskIndex['top']);\n // Bottom texture should not change based on that setting.\n }\n\n updateFromObjectData(\n oldObjectData: Cube3DObjectData,\n newObjectData: Cube3DObjectData\n ): boolean {\n super.updateFromObjectData(oldObjectData, newObjectData);\n if (\n oldObjectData.content.frontFaceVisible !==\n newObjectData.content.frontFaceVisible\n ) {\n this.setFaceVisibility('front', newObjectData.content.frontFaceVisible);\n }\n if (\n oldObjectData.content.backFaceVisible !==\n newObjectData.content.backFaceVisible\n ) {\n this.setFaceVisibility('back', newObjectData.content.backFaceVisible);\n }\n if (\n oldObjectData.content.leftFaceVisible !==\n newObjectData.content.leftFaceVisible\n ) {\n this.setFaceVisibility('left', newObjectData.content.leftFaceVisible);\n }\n if (\n oldObjectData.content.rightFaceVisible !==\n newObjectData.content.rightFaceVisible\n ) {\n this.setFaceVisibility('right', newObjectData.content.rightFaceVisible);\n }\n if (\n oldObjectData.content.topFaceVisible !==\n newObjectData.content.topFaceVisible\n ) {\n this.setFaceVisibility('top', newObjectData.content.topFaceVisible);\n }\n if (\n oldObjectData.content.bottomFaceVisible !==\n newObjectData.content.bottomFaceVisible\n ) {\n this.setFaceVisibility(\n 'bottom',\n newObjectData.content.bottomFaceVisible\n );\n }\n if (\n oldObjectData.content.frontFaceResourceName !==\n newObjectData.content.frontFaceResourceName\n ) {\n this.setFaceResourceName(\n 'front',\n newObjectData.content.frontFaceResourceName\n );\n }\n if (\n oldObjectData.content.backFaceResourceName !==\n newObjectData.content.backFaceResourceName\n ) {\n this.setFaceResourceName(\n 'back',\n newObjectData.content.backFaceResourceName\n );\n }\n if (\n oldObjectData.content.leftFaceResourceName !==\n newObjectData.content.leftFaceResourceName\n ) {\n this.setFaceResourceName(\n 'left',\n newObjectData.content.leftFaceResourceName\n );\n }\n if (\n oldObjectData.content.rightFaceResourceName !==\n newObjectData.content.rightFaceResourceName\n ) {\n this.setFaceResourceName(\n 'right',\n newObjectData.content.rightFaceResourceName\n );\n }\n if (\n oldObjectData.content.topFaceResourceName !==\n newObjectData.content.topFaceResourceName\n ) {\n this.setFaceResourceName(\n 'top',\n newObjectData.content.topFaceResourceName\n );\n }\n if (\n oldObjectData.content.bottomFaceResourceName !==\n newObjectData.content.bottomFaceResourceName\n ) {\n this.setFaceResourceName(\n 'bottom',\n newObjectData.content.bottomFaceResourceName\n );\n }\n if (\n oldObjectData.content.frontFaceResourceRepeat !==\n newObjectData.content.frontFaceResourceRepeat\n ) {\n this.setRepeatTextureOnFace(\n 'front',\n newObjectData.content.frontFaceResourceRepeat\n );\n }\n if (\n oldObjectData.content.backFaceResourceRepeat !==\n newObjectData.content.backFaceResourceRepeat\n ) {\n this.setRepeatTextureOnFace(\n 'back',\n newObjectData.content.backFaceResourceRepeat\n );\n }\n if (\n oldObjectData.content.leftFaceResourceRepeat !==\n newObjectData.content.leftFaceResourceRepeat\n ) {\n this.setRepeatTextureOnFace(\n 'left',\n newObjectData.content.leftFaceResourceRepeat\n );\n }\n if (\n oldObjectData.content.rightFaceResourceRepeat !==\n newObjectData.content.rightFaceResourceRepeat\n ) {\n this.setRepeatTextureOnFace(\n 'right',\n newObjectData.content.rightFaceResourceRepeat\n );\n }\n if (\n oldObjectData.content.topFaceResourceRepeat !==\n newObjectData.content.topFaceResourceRepeat\n ) {\n this.setRepeatTextureOnFace(\n 'top',\n newObjectData.content.topFaceResourceRepeat\n );\n }\n if (\n oldObjectData.content.bottomFaceResourceRepeat !==\n newObjectData.content.bottomFaceResourceRepeat\n ) {\n this.setRepeatTextureOnFace(\n 'bottom',\n newObjectData.content.bottomFaceResourceRepeat\n );\n }\n if (\n oldObjectData.content.backFaceUpThroughWhichAxisRotation !==\n newObjectData.content.backFaceUpThroughWhichAxisRotation\n ) {\n this.setBackFaceUpThroughWhichAxisRotation(\n newObjectData.content.backFaceUpThroughWhichAxisRotation\n );\n }\n if (\n oldObjectData.content.facesOrientation !==\n newObjectData.content.facesOrientation\n ) {\n this.setFacesOrientation(newObjectData.content.facesOrientation);\n }\n if (\n oldObjectData.content.materialType !==\n newObjectData.content.materialType\n ) {\n this.setMaterialType(newObjectData.content.materialType);\n }\n\n return true;\n }\n\n /**\n * Return true if the texture transparency should be enabled.\n */\n shouldUseTransparentTexture(): boolean {\n return this._shouldUseTransparentTexture;\n }\n\n _convertMaterialType(\n materialTypeString: string\n ): gdjs.Cube3DRuntimeObject.MaterialType {\n if (materialTypeString === 'StandardWithoutMetalness') {\n return gdjs.Cube3DRuntimeObject.MaterialType.StandardWithoutMetalness;\n } else {\n return gdjs.Cube3DRuntimeObject.MaterialType.Basic;\n }\n }\n\n setMaterialType(materialTypeString: string) {\n const newMaterialType = this._convertMaterialType(materialTypeString);\n if (this._materialType === newMaterialType) {\n return;\n }\n\n this._materialType = newMaterialType;\n this._renderer._updateMaterials();\n }\n }\n\n export namespace Cube3DRuntimeObject {\n export enum MaterialType {\n Basic,\n StandardWithoutMetalness,\n }\n }\n gdjs.registerObject('Scene3D::Cube3DObject', gdjs.Cube3DRuntimeObject);\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["gdjs", "faceNameToBitmaskIndex", "Cube3DRuntimeObject", "instanceContainer", "objectData", "faceName", "enable", "faceIndex", "resourceName", "axis", "orientation", "oldObjectData", "newObjectData", "materialTypeString", "newMaterialType", "MaterialType"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var gdjs;(M=>{const b={3:0,2:1,5:2,4:3,0:4,1:5},r={0:3,1:2,2:5,3:4,4:0,5:1},h={0:[0,0],1:[1,0],2:[0,1],3:[1,1]},_={0:[0,1],1:[0,0],2:[1,1],3:[1,0]};let g;const T=()=>(g||(g=new THREE.MeshBasicMaterial({transparent:!0,opacity:0,alphaTest:1})),g),n=(c,t)=>c.isFaceAtIndexVisible(t)?c.getInstanceContainer().getGame().getImageManager().getThreeMaterial(c.getFaceAtIndexResourceName(t),{useTransparentTexture:c.shouldUseTransparentTexture(),forceBasicMaterial:c._materialType===M.Cube3DRuntimeObject.MaterialType.Basic}):T();class f extends M.RuntimeObject3DRenderer{_cube3DRuntimeObject;_boxMesh;constructor(t,i){const l=new THREE.BoxGeometry(1,1,1),m=[n(t,r[0]),n(t,r[1]),n(t,r[2]),n(t,r[3]),n(t,r[4]),n(t,r[5])],x=new THREE.Mesh(l,m);super(t,i,x),this._boxMesh=x,this._cube3DRuntimeObject=t,this.updateSize(),this.updatePosition(),this.updateRotation()}updateFace(t){const i=b[t];i!==void 0&&(this._boxMesh.material[i]=n(this._cube3DRuntimeObject,t),this._cube3DRuntimeObject.isFaceAtIndexVisible(t)&&this.updateTextureUvMapping(t))}updateSize(){super.updateSize(),this.updateTextureUvMapping()}updateTextureUvMapping(t){const i=this._boxMesh.geometry.getAttribute("position"),l=this._boxMesh.geometry.getAttribute("uv"),m=t===void 0?0:b[t]*4,x=t===void 0?23:b[t]*4+3;for(let e=m;e<=x;e++){const R=Math.floor(e/4),o=this._boxMesh.material[R];if(!o||!o.map)continue;const u=this._cube3DRuntimeObject.shouldRepeatTextureOnFaceAtIndex(r[R]),d=this._cube3DRuntimeObject.getFacesOrientation()==="Y";let a,s;switch(R){case 0:u?d?(a=-(this._boxMesh.scale.z/o.map.source.data.width)*(i.getZ(e)-.5),s=-(this._boxMesh.scale.y/o.map.source.data.height)*(i.getY(e)+.5)):(a=-(this._boxMesh.scale.y/o.map.source.data.width)*(i.getY(e)-.5),s=this._boxMesh.scale.z/o.map.source.data.height*(i.getZ(e)-.5)):d?[a,s]=h[e%4]:[a,s]=_[e%4];break;case 1:u?d?(a=this._boxMesh.scale.z/o.map.source.data.width*(i.getZ(e)+.5),s=-(this._boxMesh.scale.y/o.map.source.data.height)*(i.getY(e)+.5)):(a=this._boxMesh.scale.y/o.map.source.data.width*(i.getY(e)+.5),s=this._boxMesh.scale.z/o.map.source.data.height*(i.getZ(e)-.5)):d?[a,s]=h[e%4]:([a,s]=_[e%4],a=-a,s=-s);break;case 2:u?(a=this._boxMesh.scale.x/o.map.source.data.width*(i.getX(e)+.5),s=this._boxMesh.scale.z/o.map.source.data.height*(i.getZ(e)-.5)):[a,s]=h[e%4];break;case 3:u?d?(a=this._boxMesh.scale.x/o.map.source.data.width*(i.getX(e)+.5),s=-(this._boxMesh.scale.z/o.map.source.data.height)*(i.getZ(e)+.5)):(a=-(this._boxMesh.scale.x/o.map.source.data.width)*(i.getX(e)-.5),s=this._boxMesh.scale.z/o.map.source.data.height*(i.getZ(e)-.5)):([a,s]=h[e%4],d||(a=-a,s=-s));break;case 4:u?(a=this._boxMesh.scale.x/o.map.source.data.width*(i.getX(e)+.5),s=-(this._boxMesh.scale.y/o.map.source.data.height)*(i.getY(e)+.5)):[a,s]=h[e%4];break;case 5:const p=this._cube3DRuntimeObject.getBackFaceUpThroughWhichAxisRotation()==="X";u?(a=(p?1:-1)*(this._boxMesh.scale.x/o.map.source.data.width)*(i.getX(e)+(p?1:-1)*.5),s=(p?1:-1)*(this._boxMesh.scale.y/o.map.source.data.height)*(i.getY(e)+(p?-1:1)*.5)):([a,s]=h[e%4],p&&(a=-a,s=-s));break;default:[a,s]=h[e%4]}l.setXY(e,a,s)}l.needsUpdate=!0}_updateMaterials(){for(let t=0;t<6;t++)this.updateFace(t)}}M.Cube3DRuntimeObjectRenderer=f})(gdjs||={});
|
|
2
|
+
//# sourceMappingURL=Cube3DRuntimeObjectPixiRenderer.js.map
|