gdcore-tools 2.0.0-gd-v5.5.223-autobuild → 2.0.0-gd-v5.5.225-autobuild
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/dist/Runtime/CustomRuntimeObject.js +1 -1
- package/dist/Runtime/CustomRuntimeObject.js.map +2 -2
- package/dist/Runtime/CustomRuntimeObject2D.js.map +2 -2
- package/dist/Runtime/Extensions/3D/A_RuntimeObject3D.js.map +2 -2
- package/dist/Runtime/Extensions/3D/Base3DBehavior.js.map +2 -2
- package/dist/Runtime/Extensions/3D/Cube3DRuntimeObject.js +1 -1
- package/dist/Runtime/Extensions/3D/Cube3DRuntimeObject.js.map +2 -2
- package/dist/Runtime/Extensions/3D/Cube3DRuntimeObjectPixiRenderer.js +1 -1
- package/dist/Runtime/Extensions/3D/Cube3DRuntimeObjectPixiRenderer.js.map +2 -2
- package/dist/Runtime/Extensions/3D/CustomRuntimeObject3D.js.map +2 -2
- package/dist/Runtime/Extensions/3D/CustomRuntimeObject3DRenderer.js.map +2 -2
- package/dist/Runtime/Extensions/3D/JsExtension.js +219 -108
- package/dist/Runtime/Extensions/3D/Model3DRuntimeObject.js +1 -1
- package/dist/Runtime/Extensions/3D/Model3DRuntimeObject.js.map +2 -2
- package/dist/Runtime/Extensions/3D/Model3DRuntimeObject3DRenderer.js +1 -1
- package/dist/Runtime/Extensions/3D/Model3DRuntimeObject3DRenderer.js.map +2 -2
- package/dist/Runtime/Extensions/AdMob/JsExtension.js +63 -1
- package/dist/Runtime/Extensions/AdMob/admobtools.js +1 -1
- package/dist/Runtime/Extensions/AdMob/admobtools.js.map +2 -2
- package/dist/Runtime/Extensions/AdvancedWindow/electron-advancedwindowtools.js.map +2 -2
- package/dist/Runtime/Extensions/AnchorBehavior/anchorruntimebehavior.js +1 -1
- package/dist/Runtime/Extensions/AnchorBehavior/anchorruntimebehavior.js.map +2 -2
- package/dist/Runtime/Extensions/BBText/JsExtension.js +10 -9
- package/dist/Runtime/Extensions/BBText/bbtextruntimeobject.js.map +2 -2
- package/dist/Runtime/Extensions/BitmapText/JsExtension.js +4 -6
- package/dist/Runtime/Extensions/BitmapText/bitmaptextruntimeobject-pixi-renderer.js.map +2 -2
- package/dist/Runtime/Extensions/BitmapText/bitmaptextruntimeobject.js.map +2 -2
- package/dist/Runtime/Extensions/DialogueTree/dialoguetools.js.map +2 -2
- package/dist/Runtime/Extensions/DraggableBehavior/draggableruntimebehavior.js.map +2 -2
- package/dist/Runtime/Extensions/Effects/adjustment-pixi-filter.js.map +2 -2
- package/dist/Runtime/Extensions/Effects/advanced-bloom-pixi-filter.js.map +2 -2
- package/dist/Runtime/Extensions/Effects/ascii-pixi-filter.js.map +2 -2
- package/dist/Runtime/Extensions/Effects/bevel-pixi-filter.js.map +2 -2
- package/dist/Runtime/Extensions/Effects/black-and-white-pixi-filter.js.map +2 -2
- package/dist/Runtime/Extensions/Effects/blending-mode-pixi-filter.js.map +2 -2
- package/dist/Runtime/Extensions/Effects/brightness-pixi-filter.js.map +2 -2
- package/dist/Runtime/Extensions/Effects/bulge-pinch-pixi-filter.js.map +2 -2
- package/dist/Runtime/Extensions/Effects/color-map-pixi-filter.js.map +2 -2
- package/dist/Runtime/Extensions/Effects/color-replace-pixi-filter.js.map +2 -2
- package/dist/Runtime/Extensions/Effects/crt-pixi-filter.js.map +2 -2
- package/dist/Runtime/Extensions/Effects/displacement-pixi-filter.js.map +2 -2
- package/dist/Runtime/Extensions/Effects/dot-pixi-filter.js.map +2 -2
- package/dist/Runtime/Extensions/Effects/drop-shadow-pixi-filter.js.map +2 -2
- package/dist/Runtime/Extensions/Effects/glitch-pixi-filter.js.map +2 -2
- package/dist/Runtime/Extensions/Effects/glow-pixi-filter.js.map +2 -2
- package/dist/Runtime/Extensions/Effects/godray-pixi-filter.js.map +2 -2
- package/dist/Runtime/Extensions/Effects/kawase-blur-pixi-filter.js.map +2 -2
- package/dist/Runtime/Extensions/Effects/noise-pixi-filter.js.map +2 -2
- package/dist/Runtime/Extensions/Effects/old-film-pixi-filter.js.map +2 -2
- package/dist/Runtime/Extensions/Effects/outline-pixi-filter.js.map +2 -2
- package/dist/Runtime/Extensions/Effects/pixelate-pixi-filter.js.map +2 -2
- package/dist/Runtime/Extensions/Effects/pixi-filters/types/drop-shadow/types.d.ts +10 -4
- package/dist/Runtime/Extensions/Effects/radial-blur-pixi-filter.js.map +2 -2
- package/dist/Runtime/Extensions/Effects/reflection-pixi-filter.js.map +2 -2
- package/dist/Runtime/Extensions/Effects/rgb-split-pixi-filter.js.map +2 -2
- package/dist/Runtime/Extensions/Effects/sepia-pixi-filter.js.map +2 -2
- package/dist/Runtime/Extensions/Effects/shockwave-pixi-filter.js.map +2 -2
- package/dist/Runtime/Extensions/Effects/tilt-shift-pixi-filter.js.map +2 -2
- package/dist/Runtime/Extensions/Effects/twist-pixi-filter.js.map +2 -2
- package/dist/Runtime/Extensions/Effects/zoom-blur-pixi-filter.js.map +2 -2
- package/dist/Runtime/Extensions/ExampleJsExtension/dummyeffect.js.map +2 -2
- package/dist/Runtime/Extensions/FacebookInstantGames/facebookinstantgamestools.js.map +2 -2
- package/dist/Runtime/Extensions/Firebase/A_firebasejs/firebase.d.ts +5 -4
- package/dist/Runtime/Extensions/Firebase/B_firebasetools/D_cloudfirestoretools.js.map +2 -2
- package/dist/Runtime/Extensions/Firebase/B_firebasetools/D_remoteconfigtools.js.map +2 -2
- package/dist/Runtime/Extensions/Firebase/JsExtension.js +21 -21
- package/dist/Runtime/Extensions/JsExtensionTypes.d.ts +1 -0
- package/dist/Runtime/Extensions/Leaderboards/leaderboardstools.js.map +2 -2
- package/dist/Runtime/Extensions/Lighting/JsExtension.js +2 -2
- package/dist/Runtime/Extensions/Lighting/lightobstacleruntimebehavior.js.map +2 -2
- package/dist/Runtime/Extensions/Lighting/lightruntimeobject-pixi-renderer.js.map +2 -2
- package/dist/Runtime/Extensions/Lighting/lightruntimeobject.js.map +2 -2
- package/dist/Runtime/Extensions/LinkedObjects/linkedobjects.js.map +2 -2
- package/dist/Runtime/Extensions/Multiplayer/JsExtension.js +122 -0
- package/dist/Runtime/Extensions/Multiplayer/messageManager.js.map +2 -2
- package/dist/Runtime/Extensions/Multiplayer/multiplayerVariablesManager.js.map +2 -2
- package/dist/Runtime/Extensions/Multiplayer/multiplayercomponents.js +1 -1
- package/dist/Runtime/Extensions/Multiplayer/multiplayercomponents.js.map +2 -2
- package/dist/Runtime/Extensions/Multiplayer/multiplayerobjectruntimebehavior.js.map +2 -2
- package/dist/Runtime/Extensions/Multiplayer/multiplayertools.js +1 -1
- package/dist/Runtime/Extensions/Multiplayer/multiplayertools.js.map +2 -2
- package/dist/Runtime/Extensions/Multiplayer/peerJsHelper.js +1 -1
- package/dist/Runtime/Extensions/Multiplayer/peerJsHelper.js.map +2 -2
- package/dist/Runtime/Extensions/Multiplayer/peerjs.d.ts +8 -10
- package/dist/Runtime/Extensions/P2P/peerjs.d.ts +8 -10
- package/dist/Runtime/Extensions/PanelSpriteObject/panelspriteruntimeobject-pixi-renderer.js.map +2 -2
- package/dist/Runtime/Extensions/PanelSpriteObject/panelspriteruntimeobject.js.map +2 -2
- package/dist/Runtime/Extensions/ParticleSystem/particleemitterobject-pixi-renderer.js.map +2 -2
- package/dist/Runtime/Extensions/ParticleSystem/particleemitterobject.js.map +2 -2
- package/dist/Runtime/Extensions/ParticleSystem/pixi-particles-pixi-renderer.d.ts +2 -1
- package/dist/Runtime/Extensions/PathfindingBehavior/pathfindingobstacleruntimebehavior.js.map +2 -2
- package/dist/Runtime/Extensions/PathfindingBehavior/pathfindingruntimebehavior.js.map +2 -2
- package/dist/Runtime/Extensions/Physics2Behavior/JsExtension.js +106 -106
- package/dist/Runtime/Extensions/Physics2Behavior/box2d.d.ts +13 -7
- package/dist/Runtime/Extensions/Physics2Behavior/physics2runtimebehavior.js.map +2 -2
- package/dist/Runtime/Extensions/Physics3DBehavior/Physics3DRuntimeBehavior.js +1 -1
- package/dist/Runtime/Extensions/Physics3DBehavior/Physics3DRuntimeBehavior.js.map +2 -2
- package/dist/Runtime/Extensions/Physics3DBehavior/PhysicsCharacter3DRuntimeBehavior.js +1 -1
- package/dist/Runtime/Extensions/Physics3DBehavior/PhysicsCharacter3DRuntimeBehavior.js.map +2 -2
- package/dist/Runtime/Extensions/PhysicsBehavior/physicsruntimebehavior.js.map +2 -2
- package/dist/Runtime/Extensions/PlatformBehavior/platformerobjectruntimebehavior.js.map +2 -2
- package/dist/Runtime/Extensions/PlatformBehavior/platformruntimebehavior.js.map +2 -2
- package/dist/Runtime/Extensions/PlayerAuthentication/playerauthenticationcomponents.js.map +1 -1
- package/dist/Runtime/Extensions/PlayerAuthentication/playerauthenticationtools.js +1 -1
- package/dist/Runtime/Extensions/PlayerAuthentication/playerauthenticationtools.js.map +2 -2
- package/dist/Runtime/Extensions/PrimitiveDrawing/shapepainterruntimeobject-pixi-renderer.js.map +2 -2
- package/dist/Runtime/Extensions/PrimitiveDrawing/shapepainterruntimeobject.js.map +2 -2
- package/dist/Runtime/Extensions/SpatialSound/spatialsoundtools.js +1 -1
- package/dist/Runtime/Extensions/SpatialSound/spatialsoundtools.js.map +2 -2
- package/dist/Runtime/Extensions/Spine/JsExtension.js +5 -4
- package/dist/Runtime/Extensions/Spine/managers/pixi-spine-atlas-manager.js +1 -1
- package/dist/Runtime/Extensions/Spine/managers/pixi-spine-atlas-manager.js.map +2 -2
- package/dist/Runtime/Extensions/Spine/managers/pixi-spine-manager.js +1 -1
- package/dist/Runtime/Extensions/Spine/managers/pixi-spine-manager.js.map +2 -2
- package/dist/Runtime/Extensions/Spine/spineruntimeobject-pixi-renderer.js.map +2 -2
- package/dist/Runtime/Extensions/Spine/spineruntimeobject.js.map +2 -2
- package/dist/Runtime/Extensions/Steamworks/JsExtension.js +12 -12
- package/dist/Runtime/Extensions/Steamworks/Z_steamworksinputtools.js.map +2 -2
- package/dist/Runtime/Extensions/Steamworks/steamworkstools.js.map +2 -2
- package/dist/Runtime/Extensions/TextEntryObject/textentryruntimeobject-pixi-renderer.js.map +2 -2
- package/dist/Runtime/Extensions/TextInput/JsExtension.js +2 -2
- package/dist/Runtime/Extensions/TextInput/textinputruntimeobject-pixi-renderer.js +1 -1
- package/dist/Runtime/Extensions/TextInput/textinputruntimeobject-pixi-renderer.js.map +2 -2
- package/dist/Runtime/Extensions/TextInput/textinputruntimeobject.js.map +2 -2
- package/dist/Runtime/Extensions/TextObject/textruntimeobject-pixi-renderer.js.map +2 -2
- package/dist/Runtime/Extensions/TextObject/textruntimeobject.js.map +2 -2
- package/dist/Runtime/Extensions/TileMap/JsExtension.js +20 -18
- package/dist/Runtime/Extensions/TileMap/TileMapRuntimeManager.js.map +2 -2
- package/dist/Runtime/Extensions/TileMap/collision/TransformedTileMap.js.map +2 -2
- package/dist/Runtime/Extensions/TileMap/helper/dts/model/TileMapModel.d.ts +1 -3
- package/dist/Runtime/Extensions/TileMap/simpletilemapruntimeobject.js.map +2 -2
- package/dist/Runtime/Extensions/TileMap/tilemapcollisionmaskruntimeobject.js.map +2 -2
- package/dist/Runtime/Extensions/TileMap/tilemapruntimeobject-pixi-renderer.js.map +1 -1
- package/dist/Runtime/Extensions/TileMap/tilemapruntimeobject.js.map +2 -2
- package/dist/Runtime/Extensions/TiledSpriteObject/tiledspriteruntimeobject-pixi-renderer.js.map +2 -2
- package/dist/Runtime/Extensions/TiledSpriteObject/tiledspriteruntimeobject.js.map +2 -2
- package/dist/Runtime/Extensions/TopDownMovementBehavior/topdownmovementruntimebehavior.js.map +2 -2
- package/dist/Runtime/Extensions/TweenBehavior/tweenruntimebehavior.js.map +1 -1
- package/dist/Runtime/Extensions/Video/JsExtension.js +2 -1
- package/dist/Runtime/Extensions/Video/videoruntimeobject-pixi-renderer.js.map +2 -2
- package/dist/Runtime/Extensions/Video/videoruntimeobject.js.map +2 -2
- package/dist/Runtime/InAppTutorialMessage.js +6 -0
- package/dist/Runtime/InAppTutorialMessage.js.map +7 -0
- package/dist/Runtime/Model3DManager.js.map +2 -2
- package/dist/Runtime/ResourceLoader.js.map +2 -2
- package/dist/Runtime/RuntimeCustomObjectLayer.js +1 -1
- package/dist/Runtime/RuntimeCustomObjectLayer.js.map +2 -2
- package/dist/Runtime/RuntimeInstanceContainer.js.map +1 -1
- package/dist/Runtime/RuntimeLayer.js.map +2 -2
- package/dist/Runtime/SpriteAnimator.js.map +2 -2
- package/dist/Runtime/affinetransformation.js.map +1 -1
- package/dist/Runtime/debugger-client/abstract-debugger-client.js.map +2 -2
- package/dist/Runtime/debugger-client/hot-reloader.js +2 -2
- package/dist/Runtime/debugger-client/hot-reloader.js.map +2 -2
- package/dist/Runtime/debugger-client/websocket-debugger-client.js +1 -1
- package/dist/Runtime/debugger-client/websocket-debugger-client.js.map +2 -2
- package/dist/Runtime/events-tools/networktools.js +1 -1
- package/dist/Runtime/events-tools/networktools.js.map +2 -2
- package/dist/Runtime/fontfaceobserver-font-manager/fontfaceobserver-font-manager.js.map +2 -2
- package/dist/Runtime/gd.js.map +2 -2
- package/dist/Runtime/howler-sound-manager/howler-sound-manager.js +1 -1
- package/dist/Runtime/howler-sound-manager/howler-sound-manager.js.map +2 -2
- package/dist/Runtime/inputmanager.js.map +2 -2
- package/dist/Runtime/jsonmanager.js.map +2 -2
- package/dist/Runtime/layer.js.map +2 -2
- package/dist/Runtime/libs/nanomarkdown.js +5 -0
- package/dist/Runtime/libs/nanomarkdown.js.map +7 -0
- package/dist/Runtime/object-capabilities/AnimatableBehavior.js.map +2 -2
- package/dist/Runtime/object-capabilities/EffectBehavior.js.map +2 -2
- package/dist/Runtime/object-capabilities/FlippableBehavior.js.map +2 -2
- package/dist/Runtime/object-capabilities/OpacityBehavior.js.map +2 -2
- package/dist/Runtime/object-capabilities/ResizableBehavior.js.map +2 -2
- package/dist/Runtime/object-capabilities/ScalableBehavior.js.map +2 -2
- package/dist/Runtime/object-capabilities/TextContainerBehavior.js.map +2 -2
- package/dist/Runtime/pixi-renderers/CustomRuntimeObject2DPixiRenderer.js.map +2 -2
- package/dist/Runtime/pixi-renderers/DebuggerPixiRenderer.js.map +2 -2
- package/dist/Runtime/pixi-renderers/layer-pixi-renderer.js.map +2 -2
- package/dist/Runtime/pixi-renderers/loadingscreen-pixi-renderer.js.map +2 -2
- package/dist/Runtime/pixi-renderers/pixi-bitmapfont-manager.js.map +2 -2
- package/dist/Runtime/pixi-renderers/pixi-filters-tools.js.map +2 -2
- package/dist/Runtime/pixi-renderers/pixi-image-manager.js +1 -1
- package/dist/Runtime/pixi-renderers/pixi-image-manager.js.map +2 -2
- package/dist/Runtime/pixi-renderers/pixi.js +123 -177
- package/dist/Runtime/pixi-renderers/runtimegame-pixi-renderer.js +1 -1
- package/dist/Runtime/pixi-renderers/runtimegame-pixi-renderer.js.map +2 -2
- package/dist/Runtime/pixi-renderers/runtimescene-pixi-renderer.js.map +2 -2
- package/dist/Runtime/pixi-renderers/spriteruntimeobject-pixi-renderer.js.map +2 -2
- package/dist/Runtime/profiler.js.map +2 -2
- package/dist/Runtime/runtimegame.js +1 -1
- package/dist/Runtime/runtimegame.js.map +2 -2
- package/dist/Runtime/runtimeobject.js +1 -1
- package/dist/Runtime/runtimeobject.js.map +2 -2
- package/dist/Runtime/runtimescene.js.map +2 -2
- package/dist/Runtime/runtimewatermark.js.map +2 -2
- package/dist/Runtime/scenestack.js.map +2 -2
- package/dist/Runtime/spriteruntimeobject.js.map +2 -2
- package/dist/Runtime/variable.js.map +2 -2
- package/dist/Runtime/variablescontainer.js.map +2 -2
- package/dist/lib/libGD.cjs +1 -1
- package/dist/lib/libGD.wasm +0 -0
- package/gd.d.ts +6 -0
- package/package.json +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../GDevelop/GDJS/Runtime/layer.ts"],
|
|
4
|
-
"sourcesContent": ["/*\n * GDevelop JS Platform\n * Copyright 2013-2016 Florian Rival (Florian.Rival@gmail.com). All rights reserved.\n * This project is released under the MIT License.\n */\nnamespace gdjs {\n /**\n * Represents a layer of a scene, used to display objects.\n */\n export class Layer extends gdjs.RuntimeLayer {\n _cameraRotation: float = 0;\n _zoomFactor: float = 1;\n _cameraX: float;\n _cameraY: float;\n _cameraZ: float = 0;\n /**\n * `_cameraZ` is dirty when the zoom factor is set last.\n */\n _isCameraZDirty: boolean = true;\n\n /**\n * @param layerData The data used to initialize the layer\n * @param instanceContainer The container in which the layer is used\n */\n constructor(\n layerData: LayerData,\n instanceContainer: gdjs.RuntimeInstanceContainer\n ) {\n super(layerData, instanceContainer);\n\n if (\n this._defaultCameraBehavior ===\n gdjs.RuntimeLayerDefaultCameraBehavior.TOP_LEFT_ANCHORED_IF_NEVER_MOVED\n ) {\n // If top-left must stay in the top-left corner, this means we center the camera on the current size.\n this._cameraX = this._runtimeScene.getViewportOriginX();\n this._cameraY = this._runtimeScene.getViewportOriginY();\n } else {\n // Otherwise, the default camera position is the center of the initial viewport.\n this._cameraX =\n (this._runtimeScene.getInitialUnrotatedViewportMinX() +\n this._runtimeScene.getInitialUnrotatedViewportMaxX()) /\n 2;\n this._cameraY =\n (this._runtimeScene.getInitialUnrotatedViewportMinY() +\n this._runtimeScene.getInitialUnrotatedViewportMaxY()) /\n 2;\n }\n if (this.getCameraType() === gdjs.RuntimeLayerCameraType.ORTHOGRAPHIC) {\n this._cameraZ =\n (this._initialCamera3DFarPlaneDistance +\n this._initialCamera3DNearPlaneDistance) /\n 2;\n }\n\n // Let the renderer do its final set up:\n this._renderer.onCreated();\n }\n\n /**\n * Called by the RuntimeScene whenever the game resolution size is changed.\n * Updates the layer width/height and position.\n */\n onGameResolutionResized(\n oldGameResolutionOriginX: float,\n oldGameResolutionOriginY: float\n ): void {\n // Adapt position of the camera center only if the camera has never moved as:\n // * When the camera follows a player/object, it will rarely be at the default position.\n // (and if is, it will be moved again by the behavior/events).\n // * Cameras not following a player/object are usually UIs which are intuitively\n // expected not to \"move\" (top-left stays \"fixed\"), while gameplay is \"centered\" (center stays \"fixed\").\n //\n // Note that anchor behavior is usually a better choice for UIs.\n if (\n this._defaultCameraBehavior ===\n gdjs.RuntimeLayerDefaultCameraBehavior\n .TOP_LEFT_ANCHORED_IF_NEVER_MOVED &&\n // Have a safety margin of 1 pixel to avoid rounding errors.\n Math.abs(this._cameraX - oldGameResolutionOriginX) < 1 &&\n Math.abs(this._cameraY - oldGameResolutionOriginY) < 1 &&\n this._zoomFactor === 1\n ) {\n this._cameraX +=\n this._runtimeScene.getViewportOriginX() - oldGameResolutionOriginX;\n this._cameraY +=\n this._runtimeScene.getViewportOriginY() - oldGameResolutionOriginY;\n }\n\n this._renderer.updatePosition();\n this._renderer.updateResolution();\n }\n\n /**\n * Change the camera center X position.\n *\n * @param cameraId The camera number. Currently ignored.\n * @return The x position of the camera\n */\n getCameraX(cameraId?: integer): float {\n this._forceDimensionUpdate();\n return this._cameraX;\n }\n\n /**\n * Change the camera center Y position.\n *\n * @param cameraId The camera number. Currently ignored.\n * @return The y position of the camera\n */\n getCameraY(cameraId?: integer): float {\n this._forceDimensionUpdate();\n return this._cameraY;\n }\n\n /**\n * Set the camera center X position.\n *\n * @param x The new x position\n * @param cameraId The camera number. Currently ignored.\n */\n setCameraX(x: float, cameraId?: integer): void {\n this._forceDimensionUpdate();\n this._cameraX = x;\n this._renderer.updatePosition();\n }\n\n /**\n * Set the camera center Y position.\n *\n * @param y The new y position\n * @param cameraId The camera number. Currently ignored.\n */\n setCameraY(y: float, cameraId?: integer): void {\n this._forceDimensionUpdate();\n this._cameraY = y;\n this._renderer.updatePosition();\n }\n\n /**\n * Get the camera width (which can be different than the game resolution width\n * if the camera is zoomed).\n *\n * @param cameraId The camera number. Currently ignored.\n * @return The width of the camera\n */\n getCameraWidth(cameraId?: integer): float {\n return this.getWidth() / this._zoomFactor;\n }\n\n /**\n * Get the camera height (which can be different than the game resolution height\n * if the camera is zoomed).\n *\n * @param cameraId The camera number. Currently ignored.\n * @return The height of the camera\n */\n getCameraHeight(cameraId?: integer): float {\n return this.getHeight() / this._zoomFactor;\n }\n\n /**\n * Set the zoom of a camera.\n *\n * @param newZoom The new zoom. Must be superior to 0. 1 is the default zoom.\n * @param cameraId The camera number. Currently ignored.\n */\n setCameraZoom(newZoom: float, cameraId?: integer): void {\n this._zoomFactor = newZoom;\n this._isCameraZDirty = true;\n this._renderer.updatePosition();\n }\n\n /**\n * Get the zoom of a camera.\n *\n * @param cameraId The camera number. Currently ignored.\n * @return The zoom.\n */\n getCameraZoom(cameraId?: integer): float {\n return this._zoomFactor;\n }\n\n /**\n * Set the camera center Z position.\n *\n * @param z The new y position.\n * @param fov The field of view.\n * @param cameraId The camera number. Currently ignored.\n */\n setCameraZ(z: float, fov: float | null, cameraId?: integer): void {\n if (fov) {\n const cameraFovInRadians = gdjs.toRad(fov);\n\n // The zoom factor is capped to a not too big value to avoid infinity.\n // MAX_SAFE_INTEGER is an arbitrary choice. It's big but not too big.\n const zoomFactor = Math.min(\n Number.MAX_SAFE_INTEGER,\n (0.5 * this.getHeight()) / (z * Math.tan(0.5 * cameraFovInRadians))\n );\n\n if (zoomFactor > 0) {\n this._zoomFactor = zoomFactor;\n }\n }\n\n this._cameraZ = z;\n this._isCameraZDirty = false;\n this._renderer.updatePosition();\n }\n\n /**\n * Get the camera center Z position.\n *\n * @param fov The field of view.\n * @param cameraId The camera number. Currently ignored.\n * @return The z position of the camera\n */\n getCameraZ(fov: float | null, cameraId?: integer): float {\n if (!this._isCameraZDirty || !fov) {\n return this._cameraZ;\n }\n\n // Set the camera so that it displays the whole PixiJS plane, as if it was a 2D rendering.\n // The Z position is computed by taking the half height of the displayed rendering,\n // and using the angle of the triangle defined by the field of view to compute the length\n // of the triangle defining the distance between the camera and the rendering plane.\n const cameraZPosition =\n (0.5 * this.getHeight()) /\n this.getCameraZoom() /\n Math.tan(0.5 * gdjs.toRad(fov));\n\n return cameraZPosition;\n }\n\n /**\n * Get the rotation of the camera, expressed in degrees.\n *\n * @param cameraId The camera number. Currently ignored.\n * @return The rotation, in degrees.\n */\n getCameraRotation(cameraId?: integer): float {\n return this._cameraRotation;\n }\n\n /**\n * Set the rotation of the camera, expressed in degrees.\n * The rotation is made around the camera center.\n *\n * @param rotation The new rotation, in degrees.\n * @param cameraId The camera number. Currently ignored.\n */\n setCameraRotation(rotation: float, cameraId?: integer): void {\n this._cameraRotation = rotation;\n this._renderer.updatePosition();\n }\n\n /**\n * Convert a point from the canvas coordinates (for example,\n * the mouse position) to the container coordinates.\n *\n * This method handles 3D rotations.\n *\n * @param x The x position, in canvas coordinates.\n * @param y The y position, in canvas coordinates.\n * @param cameraId The camera number. Currently ignored.\n * @param result The point instance that is used to return the result.\n */\n convertCoords(\n x: float,\n y: float,\n cameraId: integer = 0,\n result: FloatPoint\n ): FloatPoint {\n // This code duplicates applyLayerInverseTransformation for performance reasons;\n\n // The result parameter used to be optional.\n let position = result || [0, 0];\n\n if (this._renderer.isCameraRotatedIn3D()) {\n return this._renderer.transformTo3DWorld(x, y, 0, cameraId, result);\n }\n\n x -= this.getRuntimeScene()._cachedGameResolutionWidth / 2;\n y -= this.getRuntimeScene()._cachedGameResolutionHeight / 2;\n x /= Math.abs(this._zoomFactor);\n y /= Math.abs(this._zoomFactor);\n\n // Only compute angle and cos/sin once (allow heavy optimization from JS engines).\n const angleInRadians = (this._cameraRotation / 180) * Math.PI;\n const tmp = x;\n const cosValue = Math.cos(angleInRadians);\n const sinValue = Math.sin(angleInRadians);\n x = cosValue * x - sinValue * y;\n y = sinValue * tmp + cosValue * y;\n position[0] = x + this.getCameraX(cameraId);\n position[1] = y + this.getCameraY(cameraId);\n return position;\n }\n\n /**\n * Return an array containing the coordinates of the point passed as parameter\n * in layer local coordinates (as opposed to the parent coordinates).\n *\n * All transformations (scale, rotation) are supported.\n *\n * This method doesn't handle 3D rotations.\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 * @param result The point instance that is used to return the result.\n * (x and y position of the point in layer coordinates).\n */\n applyLayerInverseTransformation(\n x: float,\n y: float,\n cameraId: integer,\n result: FloatPoint\n ): FloatPoint {\n x -= this._runtimeScene.getViewportOriginX();\n y -= this._runtimeScene.getViewportOriginY();\n x /= Math.abs(this._zoomFactor);\n y /= Math.abs(this._zoomFactor);\n\n // Only compute angle and cos/sin once (allow heavy optimization from JS engines).\n const angleInRadians = (this._cameraRotation / 180) * Math.PI;\n const tmp = x;\n const cosValue = Math.cos(angleInRadians);\n const sinValue = Math.sin(angleInRadians);\n x = cosValue * x - sinValue * y;\n y = sinValue * tmp + cosValue * y;\n result[0] = x + this.getCameraX(cameraId);\n result[1] = y + this.getCameraY(cameraId);\n\n return result;\n }\n\n /**\n * Convert a point from the container coordinates (for example,\n * an object position) to the canvas coordinates.\n *\n * This method doesn't handle 3D rotations.\n *\n * @param x The x position, in container coordinates.\n * @param y The y position, in container coordinates.\n * @param cameraId The camera number. Currently ignored.\n * @param result The point instance that is used to return the result.\n */\n convertInverseCoords(\n x: float,\n y: float,\n cameraId: integer = 0,\n result: FloatPoint\n ): FloatPoint {\n // This code duplicates applyLayerTransformation for performance reasons;\n\n // The result parameter used to be optional.\n let position = result || [0, 0];\n x -= this.getCameraX(cameraId);\n y -= this.getCameraY(cameraId);\n\n // Only compute angle and cos/sin once (allow heavy optimization from JS engines).\n const angleInRadians = (this._cameraRotation / 180) * Math.PI;\n const tmp = x;\n const cosValue = Math.cos(-angleInRadians);\n const sinValue = Math.sin(-angleInRadians);\n x = cosValue * x - sinValue * y;\n y = sinValue * tmp + cosValue * y;\n x *= Math.abs(this._zoomFactor);\n y *= Math.abs(this._zoomFactor);\n position[0] = x + this.getRuntimeScene()._cachedGameResolutionWidth / 2;\n position[1] = y + this.getRuntimeScene()._cachedGameResolutionHeight / 2;\n\n return position;\n }\n\n /**\n * Return an array containing the coordinates of the point passed as parameter\n * in parent coordinate coordinates (as opposed to the layer local coordinates).\n *\n * All transformations (scale, rotation) are supported.\n *\n * This method doesn't handle 3D rotations.\n *\n * @param x The X position of the point, in layer coordinates.\n * @param y The Y position of the point, in layer 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 applyLayerTransformation(\n x: float,\n y: float,\n cameraId: integer,\n result: FloatPoint\n ): FloatPoint {\n x -= this.getCameraX(cameraId);\n y -= this.getCameraY(cameraId);\n\n // Only compute angle and cos/sin once (allow heavy optimization from JS engines).\n const angleInRadians = (this._cameraRotation / 180) * Math.PI;\n const tmp = x;\n const cosValue = Math.cos(-angleInRadians);\n const sinValue = Math.sin(-angleInRadians);\n x = cosValue * x - sinValue * y;\n y = sinValue * tmp + cosValue * y;\n x *= Math.abs(this._zoomFactor);\n y *= Math.abs(this._zoomFactor);\n x += this._runtimeScene.getViewportOriginX();\n y += this._runtimeScene.getViewportOriginY();\n\n result[0] = x;\n result[1] = y;\n return result;\n }\n\n /**\n * This ensure that the viewport dimensions are up to date.\n *\n * It's needed because custom objects dimensions are only updated on\n * demand for efficiency reasons.\n */\n private _forceDimensionUpdate(): void {\n // This will update dimensions.\n this._runtimeScene.getViewportWidth();\n }\n }\n}\n"],
|
|
5
|
-
"mappings": "AAKA,GAAU,MAAV,UAAU,EAAV,CAIS,eAAoB,GAAK,YAAa,CAe3C,YACE,EACA,EACA,CACA,MAAM,EAAW,GAlBnB,qBAAyB,EACzB,iBAAqB,EAGrB,cAAkB,EAIlB,qBAA2B,GAYzB,AACE,KAAK,yBACL,EAAK,kCAAkC,iCAGvC,MAAK,SAAW,KAAK,cAAc,qBACnC,KAAK,SAAW,KAAK,cAAc,sBAGnC,MAAK,SACF,MAAK,cAAc,kCAClB,KAAK,cAAc,mCACrB,EACF,KAAK,SACF,MAAK,cAAc,kCAClB,KAAK,cAAc,mCACrB,GAEA,KAAK,kBAAoB,EAAK,uBAAuB,cACvD,MAAK,SACF,MAAK,iCACJ,KAAK,mCACP,GAIJ,KAAK,UAAU,
|
|
4
|
+
"sourcesContent": ["/*\n * GDevelop JS Platform\n * Copyright 2013-2016 Florian Rival (Florian.Rival@gmail.com). All rights reserved.\n * This project is released under the MIT License.\n */\nnamespace gdjs {\n /**\n * Represents a layer of a scene, used to display objects.\n */\n export class Layer extends gdjs.RuntimeLayer {\n _cameraRotation: float = 0;\n _zoomFactor: float = 1;\n _cameraX: float;\n _cameraY: float;\n _cameraZ: float = 0;\n /**\n * `_cameraZ` is dirty when the zoom factor is set last.\n */\n _isCameraZDirty: boolean = true;\n\n /**\n * @param layerData The data used to initialize the layer\n * @param instanceContainer The container in which the layer is used\n */\n constructor(\n layerData: LayerData,\n instanceContainer: gdjs.RuntimeInstanceContainer\n ) {\n super(layerData, instanceContainer);\n\n if (\n this._defaultCameraBehavior ===\n gdjs.RuntimeLayerDefaultCameraBehavior.TOP_LEFT_ANCHORED_IF_NEVER_MOVED\n ) {\n // If top-left must stay in the top-left corner, this means we center the camera on the current size.\n this._cameraX = this._runtimeScene.getViewportOriginX();\n this._cameraY = this._runtimeScene.getViewportOriginY();\n } else {\n // Otherwise, the default camera position is the center of the initial viewport.\n this._cameraX =\n (this._runtimeScene.getInitialUnrotatedViewportMinX() +\n this._runtimeScene.getInitialUnrotatedViewportMaxX()) /\n 2;\n this._cameraY =\n (this._runtimeScene.getInitialUnrotatedViewportMinY() +\n this._runtimeScene.getInitialUnrotatedViewportMaxY()) /\n 2;\n }\n if (this.getCameraType() === gdjs.RuntimeLayerCameraType.ORTHOGRAPHIC) {\n this._cameraZ =\n (this._initialCamera3DFarPlaneDistance +\n this._initialCamera3DNearPlaneDistance) /\n 2;\n }\n\n // Let the renderer do its final set up:\n this._renderer.onCreated();\n }\n\n /**\n * Called by the RuntimeScene whenever the game resolution size is changed.\n * Updates the layer width/height and position.\n */\n override onGameResolutionResized(\n oldGameResolutionOriginX: float,\n oldGameResolutionOriginY: float\n ): void {\n // Adapt position of the camera center only if the camera has never moved as:\n // * When the camera follows a player/object, it will rarely be at the default position.\n // (and if is, it will be moved again by the behavior/events).\n // * Cameras not following a player/object are usually UIs which are intuitively\n // expected not to \"move\" (top-left stays \"fixed\"), while gameplay is \"centered\" (center stays \"fixed\").\n //\n // Note that anchor behavior is usually a better choice for UIs.\n if (\n this._defaultCameraBehavior ===\n gdjs.RuntimeLayerDefaultCameraBehavior\n .TOP_LEFT_ANCHORED_IF_NEVER_MOVED &&\n // Have a safety margin of 1 pixel to avoid rounding errors.\n Math.abs(this._cameraX - oldGameResolutionOriginX) < 1 &&\n Math.abs(this._cameraY - oldGameResolutionOriginY) < 1 &&\n this._zoomFactor === 1\n ) {\n this._cameraX +=\n this._runtimeScene.getViewportOriginX() - oldGameResolutionOriginX;\n this._cameraY +=\n this._runtimeScene.getViewportOriginY() - oldGameResolutionOriginY;\n }\n\n this._renderer.updatePosition();\n this._renderer.updateResolution();\n }\n\n /**\n * Change the camera center X position.\n *\n * @param cameraId The camera number. Currently ignored.\n * @return The x position of the camera\n */\n override getCameraX(cameraId?: integer): float {\n this._forceDimensionUpdate();\n return this._cameraX;\n }\n\n /**\n * Change the camera center Y position.\n *\n * @param cameraId The camera number. Currently ignored.\n * @return The y position of the camera\n */\n override getCameraY(cameraId?: integer): float {\n this._forceDimensionUpdate();\n return this._cameraY;\n }\n\n /**\n * Set the camera center X position.\n *\n * @param x The new x position\n * @param cameraId The camera number. Currently ignored.\n */\n override setCameraX(x: float, cameraId?: integer): void {\n this._forceDimensionUpdate();\n this._cameraX = x;\n this._renderer.updatePosition();\n }\n\n /**\n * Set the camera center Y position.\n *\n * @param y The new y position\n * @param cameraId The camera number. Currently ignored.\n */\n override setCameraY(y: float, cameraId?: integer): void {\n this._forceDimensionUpdate();\n this._cameraY = y;\n this._renderer.updatePosition();\n }\n\n /**\n * Get the camera width (which can be different than the game resolution width\n * if the camera is zoomed).\n *\n * @param cameraId The camera number. Currently ignored.\n * @return The width of the camera\n */\n override getCameraWidth(cameraId?: integer): float {\n return this.getWidth() / this._zoomFactor;\n }\n\n /**\n * Get the camera height (which can be different than the game resolution height\n * if the camera is zoomed).\n *\n * @param cameraId The camera number. Currently ignored.\n * @return The height of the camera\n */\n override getCameraHeight(cameraId?: integer): float {\n return this.getHeight() / this._zoomFactor;\n }\n\n /**\n * Set the zoom of a camera.\n *\n * @param newZoom The new zoom. Must be superior to 0. 1 is the default zoom.\n * @param cameraId The camera number. Currently ignored.\n */\n override setCameraZoom(newZoom: float, cameraId?: integer): void {\n this._zoomFactor = newZoom;\n this._isCameraZDirty = true;\n this._renderer.updatePosition();\n }\n\n /**\n * Get the zoom of a camera.\n *\n * @param cameraId The camera number. Currently ignored.\n * @return The zoom.\n */\n override getCameraZoom(cameraId?: integer): float {\n return this._zoomFactor;\n }\n\n /**\n * Set the camera center Z position.\n *\n * @param z The new y position.\n * @param fov The field of view.\n * @param cameraId The camera number. Currently ignored.\n */\n override setCameraZ(z: float, fov: float | null, cameraId?: integer): void {\n if (fov) {\n const cameraFovInRadians = gdjs.toRad(fov);\n\n // The zoom factor is capped to a not too big value to avoid infinity.\n // MAX_SAFE_INTEGER is an arbitrary choice. It's big but not too big.\n const zoomFactor = Math.min(\n Number.MAX_SAFE_INTEGER,\n (0.5 * this.getHeight()) / (z * Math.tan(0.5 * cameraFovInRadians))\n );\n\n if (zoomFactor > 0) {\n this._zoomFactor = zoomFactor;\n }\n }\n\n this._cameraZ = z;\n this._isCameraZDirty = false;\n this._renderer.updatePosition();\n }\n\n /**\n * Get the camera center Z position.\n *\n * @param fov The field of view.\n * @param cameraId The camera number. Currently ignored.\n * @return The z position of the camera\n */\n override getCameraZ(fov: float | null, cameraId?: integer): float {\n if (!this._isCameraZDirty || !fov) {\n return this._cameraZ;\n }\n\n // Set the camera so that it displays the whole PixiJS plane, as if it was a 2D rendering.\n // The Z position is computed by taking the half height of the displayed rendering,\n // and using the angle of the triangle defined by the field of view to compute the length\n // of the triangle defining the distance between the camera and the rendering plane.\n const cameraZPosition =\n (0.5 * this.getHeight()) /\n this.getCameraZoom() /\n Math.tan(0.5 * gdjs.toRad(fov));\n\n return cameraZPosition;\n }\n\n /**\n * Get the rotation of the camera, expressed in degrees.\n *\n * @param cameraId The camera number. Currently ignored.\n * @return The rotation, in degrees.\n */\n override getCameraRotation(cameraId?: integer): float {\n return this._cameraRotation;\n }\n\n /**\n * Set the rotation of the camera, expressed in degrees.\n * The rotation is made around the camera center.\n *\n * @param rotation The new rotation, in degrees.\n * @param cameraId The camera number. Currently ignored.\n */\n override setCameraRotation(rotation: float, cameraId?: integer): void {\n this._cameraRotation = rotation;\n this._renderer.updatePosition();\n }\n\n /**\n * Convert a point from the canvas coordinates (for example,\n * the mouse position) to the container coordinates.\n *\n * This method handles 3D rotations.\n *\n * @param x The x position, in canvas coordinates.\n * @param y The y position, in canvas coordinates.\n * @param cameraId The camera number. Currently ignored.\n * @param result The point instance that is used to return the result.\n */\n override convertCoords(\n x: float,\n y: float,\n cameraId: integer = 0,\n result: FloatPoint\n ): FloatPoint {\n // This code duplicates applyLayerInverseTransformation for performance reasons;\n\n // The result parameter used to be optional.\n let position = result || [0, 0];\n\n if (this._renderer.isCameraRotatedIn3D()) {\n return this._renderer.transformTo3DWorld(x, y, 0, cameraId, result);\n }\n\n x -= this.getRuntimeScene()._cachedGameResolutionWidth / 2;\n y -= this.getRuntimeScene()._cachedGameResolutionHeight / 2;\n x /= Math.abs(this._zoomFactor);\n y /= Math.abs(this._zoomFactor);\n\n // Only compute angle and cos/sin once (allow heavy optimization from JS engines).\n const angleInRadians = (this._cameraRotation / 180) * Math.PI;\n const tmp = x;\n const cosValue = Math.cos(angleInRadians);\n const sinValue = Math.sin(angleInRadians);\n x = cosValue * x - sinValue * y;\n y = sinValue * tmp + cosValue * y;\n position[0] = x + this.getCameraX(cameraId);\n position[1] = y + this.getCameraY(cameraId);\n return position;\n }\n\n /**\n * Return an array containing the coordinates of the point passed as parameter\n * in layer local coordinates (as opposed to the parent coordinates).\n *\n * All transformations (scale, rotation) are supported.\n *\n * This method doesn't handle 3D rotations.\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 * @param result The point instance that is used to return the result.\n * (x and y position of the point in layer coordinates).\n */\n override applyLayerInverseTransformation(\n x: float,\n y: float,\n cameraId: integer,\n result: FloatPoint\n ): FloatPoint {\n x -= this._runtimeScene.getViewportOriginX();\n y -= this._runtimeScene.getViewportOriginY();\n x /= Math.abs(this._zoomFactor);\n y /= Math.abs(this._zoomFactor);\n\n // Only compute angle and cos/sin once (allow heavy optimization from JS engines).\n const angleInRadians = (this._cameraRotation / 180) * Math.PI;\n const tmp = x;\n const cosValue = Math.cos(angleInRadians);\n const sinValue = Math.sin(angleInRadians);\n x = cosValue * x - sinValue * y;\n y = sinValue * tmp + cosValue * y;\n result[0] = x + this.getCameraX(cameraId);\n result[1] = y + this.getCameraY(cameraId);\n\n return result;\n }\n\n /**\n * Convert a point from the container coordinates (for example,\n * an object position) to the canvas coordinates.\n *\n * This method doesn't handle 3D rotations.\n *\n * @param x The x position, in container coordinates.\n * @param y The y position, in container coordinates.\n * @param cameraId The camera number. Currently ignored.\n * @param result The point instance that is used to return the result.\n */\n override convertInverseCoords(\n x: float,\n y: float,\n cameraId: integer = 0,\n result: FloatPoint\n ): FloatPoint {\n // This code duplicates applyLayerTransformation for performance reasons;\n\n // The result parameter used to be optional.\n let position = result || [0, 0];\n x -= this.getCameraX(cameraId);\n y -= this.getCameraY(cameraId);\n\n // Only compute angle and cos/sin once (allow heavy optimization from JS engines).\n const angleInRadians = (this._cameraRotation / 180) * Math.PI;\n const tmp = x;\n const cosValue = Math.cos(-angleInRadians);\n const sinValue = Math.sin(-angleInRadians);\n x = cosValue * x - sinValue * y;\n y = sinValue * tmp + cosValue * y;\n x *= Math.abs(this._zoomFactor);\n y *= Math.abs(this._zoomFactor);\n position[0] = x + this.getRuntimeScene()._cachedGameResolutionWidth / 2;\n position[1] = y + this.getRuntimeScene()._cachedGameResolutionHeight / 2;\n\n return position;\n }\n\n /**\n * Return an array containing the coordinates of the point passed as parameter\n * in parent coordinate coordinates (as opposed to the layer local coordinates).\n *\n * All transformations (scale, rotation) are supported.\n *\n * This method doesn't handle 3D rotations.\n *\n * @param x The X position of the point, in layer coordinates.\n * @param y The Y position of the point, in layer 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 override applyLayerTransformation(\n x: float,\n y: float,\n cameraId: integer,\n result: FloatPoint\n ): FloatPoint {\n x -= this.getCameraX(cameraId);\n y -= this.getCameraY(cameraId);\n\n // Only compute angle and cos/sin once (allow heavy optimization from JS engines).\n const angleInRadians = (this._cameraRotation / 180) * Math.PI;\n const tmp = x;\n const cosValue = Math.cos(-angleInRadians);\n const sinValue = Math.sin(-angleInRadians);\n x = cosValue * x - sinValue * y;\n y = sinValue * tmp + cosValue * y;\n x *= Math.abs(this._zoomFactor);\n y *= Math.abs(this._zoomFactor);\n x += this._runtimeScene.getViewportOriginX();\n y += this._runtimeScene.getViewportOriginY();\n\n result[0] = x;\n result[1] = y;\n return result;\n }\n\n /**\n * This ensure that the viewport dimensions are up to date.\n *\n * It's needed because custom objects dimensions are only updated on\n * demand for efficiency reasons.\n */\n private _forceDimensionUpdate(): void {\n // This will update dimensions.\n this._runtimeScene.getViewportWidth();\n }\n }\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
(function(y){if(typeof exports=="object"&&typeof module!="undefined")module.exports=y();else if(typeof define=="function"&&define.amd)define([],y);else{var a;typeof window!="undefined"?a=window:typeof global!="undefined"?a=global:typeof self!="undefined"?a=self:a=this,a.nmd=y()}})(function(){var y,a,C;return function A(h,x,p){function d(n,s){if(!x[n]){if(!h[n]){var f=typeof require=="function"&&require;if(!s&&f)return f(n,!0);if(b)return b(n,!0);var t=new Error("Cannot find module '"+n+"'");throw t.code="MODULE_NOT_FOUND",t}var r=x[n]={exports:{}};h[n][0].call(r.exports,function(e){var o=h[n][1][e];return d(o||e)},r,r.exports,A,h,x,p)}return x[n].exports}for(var b=typeof require=="function"&&require,g=0;g<p.length;g++)d(p[g]);return d}({1:[function(A,h,x){"use strict";var p="\\[!]#{()}*+-._",d=16;function b(s){return s.replace(/\\([(){}[\]#*+\-.!_\\])/g,function(f,t){return String.fromCharCode(1,p.indexOf(t)+d)}).replace(/(\*\*|__|~~)(.*?)\1/g,function(f,t,r){return t==="~~"?"<del>"+r+"</del>":"<b>"+r+"</b>"}).replace(/(\n|^|\W)([_\*])(.*?)\2(\W|$|\n)/g,function(f,t,r,e,o){return t+"<i>"+e+"</i>"+o}).replace(/(!?)\[([^\]<>]+)\]\((\+?)([^ \)<>]+)(?: "([^\(\)\"]+)")?\)/g,function(f,t,r,e,o,i){var c=i?' title="'+i+'"':"";return t?'<img src="'+n.href(o)+'" alt="'+r+'"'+c+"/>":(e&&(c+=' target="_blank" rel="noopener"'),'<a href="'+n.href(o)+'"'+c+">"+r+"</a>")})}function g(s){return s.replace(/\x01([\x0f-\x1c])/g,function(f,t){return p.charAt(t.charCodeAt(0)-d)})}var n=function(s){return s.replace(/.+(?:\n.+)*/g,function(f){var t=/^\s{4}([^]*)$/.exec(f);if(t)return"<pre><code>"+t[1].replace(/\n /g,`
|
|
2
|
+
`)+"</code></pre>";for(var r=[],e,o=b(f).split(`
|
|
3
|
+
`),i=0,c=o.length;i<c;++i){var _=o[i],$=/^\s{0,3}(\#{1,6})\s+(.*?)\s*#*\s*$/.exec(_);if($){r.push(e=[$[2],"h",$[1].length]);continue}var q=/^(\s*)(?:[-*]|(\d[.)])) (.+)$/.exec(_);q?r.push(e=[q[3],q[2]?"ol":"ul",q[1].length]):/^\s{0,3}([-])(\s*\1){2,}\s*$/.test(_)?r.push(e=["","hr"]):e&&e[1]!=="hr"&&e[1]!=="h"?e[0]+=`
|
|
4
|
+
`+_:r.push(e=[_,"p",""])}var l="",u=[];for(i=0,c=r.length;i<c;++i){e=r[i];var w=e[0],v=e[1],m=e[2];if(v==="ul"||v==="ol")!u.length||m>u[0][1]?(u.unshift([v,m]),l+="<"+u[0][0]+"><li>"+w):u.length>1&&m<=u[1][1]?(l+="</li></"+u.shift()[0]+">",--i):l+="</li><li>"+w;else{for(;u.length;)l+="</li></"+u.shift()[0]+">";l+=v==="hr"?"<hr/>":"<"+v+m+n.headAttrs(m,w)+">"+w+"</"+v+m+">"}}for(;u.length;)l+="</li></"+u.shift()[0]+">";return g(l)})};n.href=function(s){return s},n.headAttrs=function(s,f){return""},h.exports=n},{}]},{},[1])(1)});
|
|
5
|
+
//# sourceMappingURL=nanomarkdown.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../GDevelop/GDJS/Runtime/libs/nanomarkdown.js"],
|
|
4
|
+
"sourcesContent": ["/**\n * nano-markdown - a minimal markdown to html converter\n * Copyright (c) 2015, Vladimir Antonov. (MIT Licensed)\n * https://github.com/Holixus/nano-markdown\n * Adapted from Extracted from https://github.com/Holixus/nano-markdown/blob/b8f726b37c3e142cbedf6aed03c750664337b597/index.js.\n */\n(function (f) {\n if (typeof exports === 'object' && typeof module !== 'undefined') {\n module.exports = f();\n } else if (typeof define === 'function' && define.amd) {\n define([], f);\n } else {\n var g;\n if (typeof window !== 'undefined') {\n g = window;\n } else if (typeof global !== 'undefined') {\n g = global;\n } else if (typeof self !== 'undefined') {\n g = self;\n } else {\n g = this;\n }\n g.nmd = f();\n }\n})(function () {\n var define, module, exports;\n return (function e(t, n, r) {\n function s(o, u) {\n if (!n[o]) {\n if (!t[o]) {\n var a = typeof require == 'function' && require;\n if (!u && a) return a(o, !0);\n if (i) return i(o, !0);\n var f = new Error(\"Cannot find module '\" + o + \"'\");\n throw ((f.code = 'MODULE_NOT_FOUND'), f);\n }\n var l = (n[o] = { exports: {} });\n t[o][0].call(\n l.exports,\n function (e) {\n var n = t[o][1][e];\n return s(n ? n : e);\n },\n l,\n l.exports,\n e,\n t,\n n,\n r\n );\n }\n return n[o].exports;\n }\n var i = typeof require == 'function' && require;\n for (var o = 0; o < r.length; o++) s(r[o]);\n return s;\n })(\n {\n 1: [\n function (require, module, exports) {\n 'use strict';\n\n var escapes = '\\\\[!]#{()}*+-._',\n esc_ofs = 16;\n\n function lex(a) {\n return a\n .replace(/\\\\([(){}[\\]#*+\\-.!_\\\\])/g, function (m, ch) {\n return String.fromCharCode(1, escapes.indexOf(ch) + esc_ofs);\n })\n .replace(/(\\*\\*|__|~~)(.*?)\\1/g, function (m, delim, text) {\n return delim === '~~'\n ? '<del>' + text + '</del>'\n : '<b>' + text + '</b>';\n })\n .replace(/(\\n|^|\\W)([_\\*])(.*?)\\2(\\W|$|\\n)/g, function (\n m,\n l,\n di,\n ital,\n r\n ) {\n return l + '<i>' + ital + '</i>' + r;\n })\n .replace(\n /(!?)\\[([^\\]<>]+)\\]\\((\\+?)([^ \\)<>]+)(?: \"([^\\(\\)\\\"]+)\")?\\)/g,\n function (match, is_img, text, new_tab, ref, title) {\n var attrs = title ? ' title=\"' + title + '\"' : '';\n if (is_img)\n return (\n '<img src=\"' +\n nmd.href(ref) +\n '\" alt=\"' +\n text +\n '\"' +\n attrs +\n '/>'\n );\n if (new_tab) attrs += ' target=\"_blank\" rel=\"noopener\"';\n return (\n '<a href=\"' +\n nmd.href(ref) +\n '\"' +\n attrs +\n '>' +\n text +\n '</a>'\n );\n }\n );\n }\n\n function unesc(a) {\n return a.replace(/\\x01([\\x0f-\\x1c])/g, function (m, c) {\n return escapes.charAt(c.charCodeAt(0) - esc_ofs);\n });\n }\n\n var nmd = function (md) {\n return md.replace(/.+(?:\\n.+)*/g, function (m) {\n var code = /^\\s{4}([^]*)$/.exec(m);\n if (code)\n return (\n '<pre><code>' +\n code[1].replace(/\\n /g, '\\n') +\n '</code></pre>'\n );\n var ps = [],\n cur,\n rows = lex(m).split('\\n');\n for (var i = 0, l = rows.length; i < l; ++i) {\n var row = rows[i],\n head = /^\\s{0,3}(\\#{1,6})\\s+(.*?)\\s*#*\\s*$/.exec(row);\n if (head) {\n // heading\n ps.push((cur = [head[2], 'h', head[1].length])); // cur = [ text, type, level ]\n continue;\n }\n var list = /^(\\s*)(?:[-*]|(\\d[.)])) (.+)$/.exec(row);\n if (list)\n ps.push(\n (cur = [list[3], list[2] ? 'ol' : 'ul', list[1].length])\n );\n // cur = [ text, type, level ]\n else if (/^\\s{0,3}([-])(\\s*\\1){2,}\\s*$/.test(row))\n ps.push((cur = ['', 'hr']));\n else if (cur && cur[1] !== 'hr' && cur[1] !== 'h')\n cur[0] += '\\n' + row;\n else ps.push((cur = [row, 'p', '']));\n }\n var out = '',\n lists = [];\n for (i = 0, l = ps.length; i < l; ++i) {\n cur = ps[i];\n var text = cur[0],\n tag = cur[1],\n lvl = cur[2];\n if (tag === 'ul' || tag === 'ol') {\n if (!lists.length || lvl > lists[0][1]) {\n lists.unshift([tag, lvl]);\n out += '<' + lists[0][0] + '><li>' + text;\n } else if (lists.length > 1 && lvl <= lists[1][1]) {\n out += '</li></' + lists.shift()[0] + '>';\n --i;\n } else out += '</li><li>' + text;\n } else {\n while (lists.length)\n out += '</li></' + lists.shift()[0] + '>';\n out +=\n tag === 'hr'\n ? '<hr/>'\n : '<' +\n tag +\n lvl +\n nmd.headAttrs(lvl, text) +\n '>' +\n text +\n '</' +\n tag +\n lvl +\n '>';\n }\n }\n while (lists.length) out += '</li></' + lists.shift()[0] + '>';\n return unesc(out);\n });\n };\n nmd.href = function (ref) {\n return ref;\n };\n\n nmd.headAttrs = function (level, text) {\n return ''; // return ' id=\\''+text.replace(/[^a-z0-9]/g, '_').replace(/_{2,}/g, '_').replace(/^_*(.*?)_*$/, '$1').toLowerCase()+'\\'';\n };\n module.exports = nmd;\n },\n {},\n ],\n },\n {},\n [1]\n )(1);\n});\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../GDevelop/GDJS/Runtime/object-capabilities/AnimatableBehavior.ts"],
|
|
4
|
-
"sourcesContent": ["/*\n * GDevelop JS Platform\n * Copyright 2013-2023 Florian Rival (Florian.Rival@gmail.com). All rights reserved.\n * This project is released under the MIT License.\n */\nnamespace gdjs {\n export interface Animatable {\n /**\n * Get the index of the animation being played.\n * @return The index of the new animation being played\n */\n getAnimationIndex(): integer;\n\n /**\n * Change the animation being played.\n * @param animationIndex The index of the new animation to be played\n */\n setAnimationIndex(animationIndex: integer): void;\n\n /**\n * Get the name of the animation being played.\n * @return The name of the new animation being played\n */\n getAnimationName(): string;\n\n /**\n * Change the animation being played.\n * @param newAnimationName The name of the new animation to be played\n */\n setAnimationName(newAnimationName: string): void;\n\n /**\n * Return true if animation has ended.\n * The animation had ended if:\n * - it's not configured as a loop;\n * - the current frame is the last frame;\n * - the last frame has been displayed long enough.\n */\n hasAnimationEnded(): boolean;\n\n isAnimationPaused(): boolean;\n\n pauseAnimation(): void;\n\n resumeAnimation(): void;\n\n getAnimationSpeedScale(): float;\n\n setAnimationSpeedScale(ratio: float): void;\n\n /**\n * @return The elapsed time from the start of the animation in seconds.\n */\n getAnimationElapsedTime(): float;\n\n /**\n * Set the elapsed time from the start of the animation in seconds.\n * @param time The time in seconds\n */\n setAnimationElapsedTime(time: float): void;\n\n /**\n * @return The duration of the current animation in seconds.\n */\n getAnimationDuration(): float;\n }\n\n /**\n * A behavior that forwards the Animatable interface to its object.\n */\n export class AnimatableBehavior\n extends gdjs.RuntimeBehavior\n implements Animatable
|
|
5
|
-
"mappings": "AAKA,GAAU,MAAV,UAAU,EAAV,CAiES,eACG,GAAK,
|
|
4
|
+
"sourcesContent": ["/*\n * GDevelop JS Platform\n * Copyright 2013-2023 Florian Rival (Florian.Rival@gmail.com). All rights reserved.\n * This project is released under the MIT License.\n */\nnamespace gdjs {\n export interface Animatable {\n /**\n * Get the index of the animation being played.\n * @return The index of the new animation being played\n */\n getAnimationIndex(): integer;\n\n /**\n * Change the animation being played.\n * @param animationIndex The index of the new animation to be played\n */\n setAnimationIndex(animationIndex: integer): void;\n\n /**\n * Get the name of the animation being played.\n * @return The name of the new animation being played\n */\n getAnimationName(): string;\n\n /**\n * Change the animation being played.\n * @param newAnimationName The name of the new animation to be played\n */\n setAnimationName(newAnimationName: string): void;\n\n /**\n * Return true if animation has ended.\n * The animation had ended if:\n * - it's not configured as a loop;\n * - the current frame is the last frame;\n * - the last frame has been displayed long enough.\n */\n hasAnimationEnded(): boolean;\n\n isAnimationPaused(): boolean;\n\n pauseAnimation(): void;\n\n resumeAnimation(): void;\n\n getAnimationSpeedScale(): float;\n\n setAnimationSpeedScale(ratio: float): void;\n\n /**\n * @return The elapsed time from the start of the animation in seconds.\n */\n getAnimationElapsedTime(): float;\n\n /**\n * Set the elapsed time from the start of the animation in seconds.\n * @param time The time in seconds\n */\n setAnimationElapsedTime(time: float): void;\n\n /**\n * @return The duration of the current animation in seconds.\n */\n getAnimationDuration(): float;\n }\n\n /**\n * A behavior that forwards the Animatable interface to its object.\n */\n export class AnimatableBehavior\n extends gdjs.RuntimeBehavior\n implements Animatable\n {\n private object: gdjs.RuntimeObject & Animatable;\n\n constructor(\n instanceContainer: gdjs.RuntimeInstanceContainer,\n behaviorData,\n owner: gdjs.RuntimeObject & Animatable\n ) {\n super(instanceContainer, behaviorData, owner);\n this.object = owner;\n }\n\n usesLifecycleFunction(): boolean {\n return false;\n }\n\n updateFromBehaviorData(oldBehaviorData, newBehaviorData): boolean {\n // Nothing to update.\n return true;\n }\n\n onDeActivate() {}\n\n onDestroy() {}\n\n doStepPreEvents(instanceContainer: gdjs.RuntimeInstanceContainer) {}\n\n doStepPostEvents(instanceContainer: gdjs.RuntimeInstanceContainer) {}\n\n getAnimationIndex(): integer {\n return this.object.getAnimationIndex();\n }\n\n setAnimationIndex(animationIndex: integer): void {\n this.object.setAnimationIndex(animationIndex);\n }\n\n getAnimationName(): string {\n return this.object.getAnimationName();\n }\n\n setAnimationName(newAnimationName: string): void {\n this.object.setAnimationName(newAnimationName);\n }\n\n hasAnimationEnded(): boolean {\n return this.object.hasAnimationEnded();\n }\n\n isAnimationPaused(): boolean {\n return this.object.isAnimationPaused();\n }\n\n pauseAnimation(): void {\n this.object.pauseAnimation();\n }\n\n resumeAnimation(): void {\n this.object.resumeAnimation();\n }\n\n getAnimationSpeedScale(): float {\n return this.object.getAnimationSpeedScale();\n }\n\n setAnimationSpeedScale(ratio: float): void {\n this.object.setAnimationSpeedScale(ratio);\n }\n\n getAnimationElapsedTime(): float {\n return this.object.getAnimationElapsedTime();\n }\n\n setAnimationElapsedTime(time: float): void {\n this.object.setAnimationElapsedTime(time);\n }\n\n getAnimationDuration(): float {\n return this.object.getAnimationDuration();\n }\n }\n\n gdjs.registerBehavior(\n 'AnimatableCapability::AnimatableBehavior',\n gdjs.AnimatableBehavior\n );\n}\n"],
|
|
5
|
+
"mappings": "AAKA,GAAU,MAAV,UAAU,EAAV,CAiES,eACG,GAAK,eAEf,CAGE,YACE,EACA,EACA,EACA,CACA,MAAM,EAAmB,EAAc,GACvC,KAAK,OAAS,EAGhB,uBAAiC,CAC/B,MAAO,GAGT,uBAAuB,EAAiB,EAA0B,CAEhE,MAAO,GAGT,cAAe,EAEf,WAAY,EAEZ,gBAAgB,EAAkD,EAElE,iBAAiB,EAAkD,EAEnE,mBAA6B,CAC3B,MAAO,MAAK,OAAO,oBAGrB,kBAAkB,EAA+B,CAC/C,KAAK,OAAO,kBAAkB,GAGhC,kBAA2B,CACzB,MAAO,MAAK,OAAO,mBAGrB,iBAAiB,EAAgC,CAC/C,KAAK,OAAO,iBAAiB,GAG/B,mBAA6B,CAC3B,MAAO,MAAK,OAAO,oBAGrB,mBAA6B,CAC3B,MAAO,MAAK,OAAO,oBAGrB,gBAAuB,CACrB,KAAK,OAAO,iBAGd,iBAAwB,CACtB,KAAK,OAAO,kBAGd,wBAAgC,CAC9B,MAAO,MAAK,OAAO,yBAGrB,uBAAuB,EAAoB,CACzC,KAAK,OAAO,uBAAuB,GAGrC,yBAAiC,CAC/B,MAAO,MAAK,OAAO,0BAGrB,wBAAwB,EAAmB,CACzC,KAAK,OAAO,wBAAwB,GAGtC,sBAA8B,CAC5B,MAAO,MAAK,OAAO,wBAjFhB,EAAM,qBAqFb,EAAK,iBACH,2CACA,EAAK,sBAxJC",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../GDevelop/GDJS/Runtime/object-capabilities/EffectBehavior.ts"],
|
|
4
|
-
"sourcesContent": ["/*\n * GDevelop JS Platform\n * Copyright 2013-2023 Florian Rival (Florian.Rival@gmail.com). All rights reserved.\n * This project is released under the MIT License.\n */\nnamespace gdjs {\n export interface EffectHandler {\n /**\n * Change an effect property value (for properties that are numbers).\n * @param name The name of the effect to update.\n * @param parameterName The name of the property to update.\n * @param value The new value (number).\n */\n setEffectDoubleParameter(\n name: string,\n parameterName: string,\n value: float\n ): boolean;\n\n /**\n * Change an effect property value (for properties that are strings).\n * @param name The name of the effect to update.\n * @param parameterName The name of the property to update.\n * @param value The new value (string).\n */\n setEffectStringParameter(\n name: string,\n parameterName: string,\n value: string\n ): boolean;\n\n /**\n * Change an effect property value (for properties that are booleans).\n * @param name The name of the effect to update.\n * @param parameterName The name of the property to update.\n * @param value The new value (boolean).\n */\n setEffectBooleanParameter(\n name: string,\n parameterName: string,\n value: boolean\n ): boolean;\n\n /**\n * Enable or disable an effect.\n * @param name The name of the effect to enable or disable.\n * @param enable true to enable, false to disable\n */\n enableEffect(name: string, enable: boolean): void;\n\n /**\n * Check if an effect is enabled\n * @param name The name of the effect\n * @return true if the effect is enabled, false otherwise.\n */\n isEffectEnabled(name: string): boolean;\n }\n\n /**\n * A behavior that forwards the EffectBehavior interface to its object.\n */\n export class EffectBehavior\n extends gdjs.RuntimeBehavior\n implements EffectHandler
|
|
5
|
-
"mappings": "AAKA,GAAU,MAAV,UAAU,EAAV,CAwDS,eACG,GAAK,
|
|
4
|
+
"sourcesContent": ["/*\n * GDevelop JS Platform\n * Copyright 2013-2023 Florian Rival (Florian.Rival@gmail.com). All rights reserved.\n * This project is released under the MIT License.\n */\nnamespace gdjs {\n export interface EffectHandler {\n /**\n * Change an effect property value (for properties that are numbers).\n * @param name The name of the effect to update.\n * @param parameterName The name of the property to update.\n * @param value The new value (number).\n */\n setEffectDoubleParameter(\n name: string,\n parameterName: string,\n value: float\n ): boolean;\n\n /**\n * Change an effect property value (for properties that are strings).\n * @param name The name of the effect to update.\n * @param parameterName The name of the property to update.\n * @param value The new value (string).\n */\n setEffectStringParameter(\n name: string,\n parameterName: string,\n value: string\n ): boolean;\n\n /**\n * Change an effect property value (for properties that are booleans).\n * @param name The name of the effect to update.\n * @param parameterName The name of the property to update.\n * @param value The new value (boolean).\n */\n setEffectBooleanParameter(\n name: string,\n parameterName: string,\n value: boolean\n ): boolean;\n\n /**\n * Enable or disable an effect.\n * @param name The name of the effect to enable or disable.\n * @param enable true to enable, false to disable\n */\n enableEffect(name: string, enable: boolean): void;\n\n /**\n * Check if an effect is enabled\n * @param name The name of the effect\n * @return true if the effect is enabled, false otherwise.\n */\n isEffectEnabled(name: string): boolean;\n }\n\n /**\n * A behavior that forwards the EffectBehavior interface to its object.\n */\n export class EffectBehavior\n extends gdjs.RuntimeBehavior\n implements EffectHandler\n {\n private object: gdjs.RuntimeObject & EffectHandler;\n\n constructor(\n instanceContainer: gdjs.RuntimeInstanceContainer,\n behaviorData,\n owner: gdjs.RuntimeObject & EffectHandler\n ) {\n super(instanceContainer, behaviorData, owner);\n this.object = owner;\n }\n\n usesLifecycleFunction(): boolean {\n return false;\n }\n\n updateFromBehaviorData(oldBehaviorData, newBehaviorData): boolean {\n // Nothing to update.\n return true;\n }\n\n onDeActivate() {}\n\n onDestroy() {}\n\n doStepPreEvents(instanceContainer: gdjs.RuntimeInstanceContainer) {}\n\n doStepPostEvents(instanceContainer: gdjs.RuntimeInstanceContainer) {}\n\n setEffectDoubleParameter(\n name: string,\n parameterName: string,\n value: float\n ): boolean {\n return this.object.setEffectDoubleParameter(name, parameterName, value);\n }\n\n setEffectStringParameter(\n name: string,\n parameterName: string,\n value: string\n ): boolean {\n return this.object.setEffectStringParameter(name, parameterName, value);\n }\n\n setEffectBooleanParameter(\n name: string,\n parameterName: string,\n value: boolean\n ): boolean {\n return this.object.setEffectBooleanParameter(name, parameterName, value);\n }\n\n enableEffect(name: string, enable: boolean): void {\n this.object.enableEffect(name, enable);\n }\n\n isEffectEnabled(name: string): boolean {\n return this.object.isEffectEnabled(name);\n }\n }\n\n gdjs.registerBehavior(\n 'EffectCapability::EffectBehavior',\n gdjs.EffectBehavior\n );\n}\n"],
|
|
5
|
+
"mappings": "AAKA,GAAU,MAAV,UAAU,EAAV,CAwDS,eACG,GAAK,eAEf,CAGE,YACE,EACA,EACA,EACA,CACA,MAAM,EAAmB,EAAc,GACvC,KAAK,OAAS,EAGhB,uBAAiC,CAC/B,MAAO,GAGT,uBAAuB,EAAiB,EAA0B,CAEhE,MAAO,GAGT,cAAe,EAEf,WAAY,EAEZ,gBAAgB,EAAkD,EAElE,iBAAiB,EAAkD,EAEnE,yBACE,EACA,EACA,EACS,CACT,MAAO,MAAK,OAAO,yBAAyB,EAAM,EAAe,GAGnE,yBACE,EACA,EACA,EACS,CACT,MAAO,MAAK,OAAO,yBAAyB,EAAM,EAAe,GAGnE,0BACE,EACA,EACA,EACS,CACT,MAAO,MAAK,OAAO,0BAA0B,EAAM,EAAe,GAGpE,aAAa,EAAc,EAAuB,CAChD,KAAK,OAAO,aAAa,EAAM,GAGjC,gBAAgB,EAAuB,CACrC,MAAO,MAAK,OAAO,gBAAgB,IA7DhC,EAAM,iBAiEb,EAAK,iBACH,mCACA,EAAK,kBA3HC",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../GDevelop/GDJS/Runtime/object-capabilities/FlippableBehavior.ts"],
|
|
4
|
-
"sourcesContent": ["/*\n * GDevelop JS Platform\n * Copyright 2013-2023 Florian Rival (Florian.Rival@gmail.com). All rights reserved.\n * This project is released under the MIT License.\n */\nnamespace gdjs {\n export interface Flippable {\n flipX(enable: boolean): void;\n\n flipY(enable: boolean): void;\n\n isFlippedX(): boolean;\n\n isFlippedY(): boolean;\n }\n\n /**\n * A behavior that forwards the Flippable interface to its object.\n */\n export class FlippableBehavior\n extends gdjs.RuntimeBehavior\n implements Flippable
|
|
5
|
-
"mappings": "AAKA,GAAU,MAAV,UAAU,EAAV,CAcS,eACG,GAAK,
|
|
4
|
+
"sourcesContent": ["/*\n * GDevelop JS Platform\n * Copyright 2013-2023 Florian Rival (Florian.Rival@gmail.com). All rights reserved.\n * This project is released under the MIT License.\n */\nnamespace gdjs {\n export interface Flippable {\n flipX(enable: boolean): void;\n\n flipY(enable: boolean): void;\n\n isFlippedX(): boolean;\n\n isFlippedY(): boolean;\n }\n\n /**\n * A behavior that forwards the Flippable interface to its object.\n */\n export class FlippableBehavior\n extends gdjs.RuntimeBehavior\n implements Flippable\n {\n private object: gdjs.RuntimeObject & Flippable;\n\n constructor(\n instanceContainer: gdjs.RuntimeInstanceContainer,\n behaviorData,\n owner: gdjs.RuntimeObject & Flippable\n ) {\n super(instanceContainer, behaviorData, owner);\n this.object = owner;\n }\n\n usesLifecycleFunction(): boolean {\n return false;\n }\n\n updateFromBehaviorData(oldBehaviorData, newBehaviorData): boolean {\n // Nothing to update.\n return true;\n }\n\n onDeActivate() {}\n\n onDestroy() {}\n\n doStepPreEvents(instanceContainer: gdjs.RuntimeInstanceContainer) {}\n\n doStepPostEvents(instanceContainer: gdjs.RuntimeInstanceContainer) {}\n\n flipX(enable: boolean): void {\n this.object.flipX(enable);\n }\n\n flipY(enable: boolean): void {\n this.object.flipY(enable);\n }\n\n isFlippedX(): boolean {\n return this.object.isFlippedX();\n }\n\n isFlippedY(): boolean {\n return this.object.isFlippedY();\n }\n }\n\n gdjs.registerBehavior(\n 'FlippableCapability::FlippableBehavior',\n gdjs.FlippableBehavior\n );\n}\n"],
|
|
5
|
+
"mappings": "AAKA,GAAU,MAAV,UAAU,EAAV,CAcS,eACG,GAAK,eAEf,CAGE,YACE,EACA,EACA,EACA,CACA,MAAM,EAAmB,EAAc,GACvC,KAAK,OAAS,EAGhB,uBAAiC,CAC/B,MAAO,GAGT,uBAAuB,EAAiB,EAA0B,CAEhE,MAAO,GAGT,cAAe,EAEf,WAAY,EAEZ,gBAAgB,EAAkD,EAElE,iBAAiB,EAAkD,EAEnE,MAAM,EAAuB,CAC3B,KAAK,OAAO,MAAM,GAGpB,MAAM,EAAuB,CAC3B,KAAK,OAAO,MAAM,GAGpB,YAAsB,CACpB,MAAO,MAAK,OAAO,aAGrB,YAAsB,CACpB,MAAO,MAAK,OAAO,cA7ChB,EAAM,oBAiDb,EAAK,iBACH,yCACA,EAAK,qBAjEC",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../GDevelop/GDJS/Runtime/object-capabilities/OpacityBehavior.ts"],
|
|
4
|
-
"sourcesContent": ["/*\n * GDevelop JS Platform\n * Copyright 2013-2023 Florian Rival (Florian.Rival@gmail.com). All rights reserved.\n * This project is released under the MIT License.\n */\nnamespace gdjs {\n export interface OpacityHandler {\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\n /**\n * Get the transparency of the object.\n * @return The opacity, between 0 (transparent) and 255 (opaque).\n */\n getOpacity(): float;\n }\n\n /**\n * A behavior that forwards the Opacity interface to its object.\n */\n export class OpacityBehavior\n extends gdjs.RuntimeBehavior\n implements OpacityHandler
|
|
5
|
-
"mappings": "AAKA,GAAU,MAAV,UAAU,EAAV,CAkBS,eACG,GAAK,
|
|
4
|
+
"sourcesContent": ["/*\n * GDevelop JS Platform\n * Copyright 2013-2023 Florian Rival (Florian.Rival@gmail.com). All rights reserved.\n * This project is released under the MIT License.\n */\nnamespace gdjs {\n export interface OpacityHandler {\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\n /**\n * Get the transparency of the object.\n * @return The opacity, between 0 (transparent) and 255 (opaque).\n */\n getOpacity(): float;\n }\n\n /**\n * A behavior that forwards the Opacity interface to its object.\n */\n export class OpacityBehavior\n extends gdjs.RuntimeBehavior\n implements OpacityHandler\n {\n private object: gdjs.RuntimeObject & OpacityHandler;\n\n constructor(\n instanceContainer: gdjs.RuntimeInstanceContainer,\n behaviorData,\n owner: gdjs.RuntimeObject & OpacityHandler\n ) {\n super(instanceContainer, behaviorData, owner);\n this.object = owner;\n }\n\n usesLifecycleFunction(): boolean {\n return false;\n }\n\n updateFromBehaviorData(oldBehaviorData, newBehaviorData): boolean {\n // Nothing to update.\n return true;\n }\n\n onDeActivate() {}\n\n onDestroy() {}\n\n doStepPreEvents(instanceContainer: gdjs.RuntimeInstanceContainer) {}\n\n doStepPostEvents(instanceContainer: gdjs.RuntimeInstanceContainer) {}\n\n setOpacity(opacity: float): void {\n this.object.setOpacity(opacity);\n }\n\n getOpacity(): float {\n return this.object.getOpacity();\n }\n }\n\n gdjs.registerBehavior(\n 'OpacityCapability::OpacityBehavior',\n gdjs.OpacityBehavior\n );\n}\n"],
|
|
5
|
+
"mappings": "AAKA,GAAU,MAAV,UAAU,EAAV,CAkBS,eACG,GAAK,eAEf,CAGE,YACE,EACA,EACA,EACA,CACA,MAAM,EAAmB,EAAc,GACvC,KAAK,OAAS,EAGhB,uBAAiC,CAC/B,MAAO,GAGT,uBAAuB,EAAiB,EAA0B,CAEhE,MAAO,GAGT,cAAe,EAEf,WAAY,EAEZ,gBAAgB,EAAkD,EAElE,iBAAiB,EAAkD,EAEnE,WAAW,EAAsB,CAC/B,KAAK,OAAO,WAAW,GAGzB,YAAoB,CAClB,MAAO,MAAK,OAAO,cArChB,EAAM,kBAyCb,EAAK,iBACH,qCACA,EAAK,mBA7DC",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../GDevelop/GDJS/Runtime/object-capabilities/ResizableBehavior.ts"],
|
|
4
|
-
"sourcesContent": ["/*\n * GDevelop JS Platform\n * Copyright 2013-2023 Florian Rival (Florian.Rival@gmail.com). All rights reserved.\n * This project is released under the MIT License.\n */\nnamespace gdjs {\n export interface Resizable {\n /**\n * Change the width of the object. This changes the scale on X axis of the object.\n *\n * @param newWidth The new width of the object, in pixels.\n */\n setWidth(newWidth: float): void;\n\n /**\n * Change the height of the object. This changes the scale on Y axis of the object.\n *\n * @param newHeight The new height of the object, in pixels.\n */\n setHeight(newHeight: float): void;\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\n /**\n * Return the width of the object.\n * @return The width of the object\n */\n getWidth(): float;\n\n /**\n * Return the width of the object.\n * @return The height of the object\n */\n getHeight(): float;\n }\n\n /**\n * A behavior that forwards the Resizable interface to its object.\n */\n export class ResizableBehavior\n extends gdjs.RuntimeBehavior\n implements Resizable
|
|
5
|
-
"mappings": "AAKA,GAAU,MAAV,UAAU,EAAV,CAwCS,eACG,GAAK,
|
|
4
|
+
"sourcesContent": ["/*\n * GDevelop JS Platform\n * Copyright 2013-2023 Florian Rival (Florian.Rival@gmail.com). All rights reserved.\n * This project is released under the MIT License.\n */\nnamespace gdjs {\n export interface Resizable {\n /**\n * Change the width of the object. This changes the scale on X axis of the object.\n *\n * @param newWidth The new width of the object, in pixels.\n */\n setWidth(newWidth: float): void;\n\n /**\n * Change the height of the object. This changes the scale on Y axis of the object.\n *\n * @param newHeight The new height of the object, in pixels.\n */\n setHeight(newHeight: float): void;\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\n /**\n * Return the width of the object.\n * @return The width of the object\n */\n getWidth(): float;\n\n /**\n * Return the width of the object.\n * @return The height of the object\n */\n getHeight(): float;\n }\n\n /**\n * A behavior that forwards the Resizable interface to its object.\n */\n export class ResizableBehavior\n extends gdjs.RuntimeBehavior\n implements Resizable\n {\n private object: gdjs.RuntimeObject & Resizable;\n\n constructor(\n instanceContainer: gdjs.RuntimeInstanceContainer,\n behaviorData,\n owner: gdjs.RuntimeObject & Resizable\n ) {\n super(instanceContainer, behaviorData, owner);\n this.object = owner;\n }\n\n usesLifecycleFunction(): boolean {\n return false;\n }\n\n updateFromBehaviorData(oldBehaviorData, newBehaviorData): boolean {\n // Nothing to update.\n return true;\n }\n\n onDeActivate() {}\n\n onDestroy() {}\n\n doStepPreEvents(instanceContainer: gdjs.RuntimeInstanceContainer) {}\n\n doStepPostEvents(instanceContainer: gdjs.RuntimeInstanceContainer) {}\n\n setWidth(newWidth: float): void {\n this.object.setWidth(newWidth);\n }\n\n setHeight(newHeight: float): void {\n this.object.setHeight(newHeight);\n }\n\n setSize(newWidth: float, newHeight: float): void {\n this.object.setSize(newWidth, newHeight);\n }\n\n getWidth(): float {\n return this.object.getWidth();\n }\n\n getHeight(): float {\n return this.object.getHeight();\n }\n }\n\n gdjs.registerBehavior(\n 'ResizableCapability::ResizableBehavior',\n gdjs.ResizableBehavior\n );\n}\n"],
|
|
5
|
+
"mappings": "AAKA,GAAU,MAAV,UAAU,EAAV,CAwCS,eACG,GAAK,eAEf,CAGE,YACE,EACA,EACA,EACA,CACA,MAAM,EAAmB,EAAc,GACvC,KAAK,OAAS,EAGhB,uBAAiC,CAC/B,MAAO,GAGT,uBAAuB,EAAiB,EAA0B,CAEhE,MAAO,GAGT,cAAe,EAEf,WAAY,EAEZ,gBAAgB,EAAkD,EAElE,iBAAiB,EAAkD,EAEnE,SAAS,EAAuB,CAC9B,KAAK,OAAO,SAAS,GAGvB,UAAU,EAAwB,CAChC,KAAK,OAAO,UAAU,GAGxB,QAAQ,EAAiB,EAAwB,CAC/C,KAAK,OAAO,QAAQ,EAAU,GAGhC,UAAkB,CAChB,MAAO,MAAK,OAAO,WAGrB,WAAmB,CACjB,MAAO,MAAK,OAAO,aAjDhB,EAAM,oBAqDb,EAAK,iBACH,yCACA,EAAK,qBA/FC",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../GDevelop/GDJS/Runtime/object-capabilities/ScalableBehavior.ts"],
|
|
4
|
-
"sourcesContent": ["/*\n * GDevelop JS Platform\n * Copyright 2013-2023 Florian Rival (Florian.Rival@gmail.com). All rights reserved.\n * This project is released under the MIT License.\n */\nnamespace gdjs {\n export interface Scalable {\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: float): void;\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: float): void;\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: float): void;\n\n /**\n * Get the scale of the object (or the geometric mean of the X and Y scale\n * in case they are different).\n *\n * @return the scale of the object (or the geometric mean of the X and\n * Y scale in case they are different).\n */\n getScale(): float;\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\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 }\n\n /**\n * A behavior that forwards the Scalable interface to its object.\n */\n export class ScalableBehavior\n extends gdjs.RuntimeBehavior\n implements Scalable
|
|
5
|
-
"mappings": "AAKA,GAAU,MAAV,UAAU,EAAV,CAkDS,eACG,GAAK,
|
|
4
|
+
"sourcesContent": ["/*\n * GDevelop JS Platform\n * Copyright 2013-2023 Florian Rival (Florian.Rival@gmail.com). All rights reserved.\n * This project is released under the MIT License.\n */\nnamespace gdjs {\n export interface Scalable {\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: float): void;\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: float): void;\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: float): void;\n\n /**\n * Get the scale of the object (or the geometric mean of the X and Y scale\n * in case they are different).\n *\n * @return the scale of the object (or the geometric mean of the X and\n * Y scale in case they are different).\n */\n getScale(): float;\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\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 }\n\n /**\n * A behavior that forwards the Scalable interface to its object.\n */\n export class ScalableBehavior\n extends gdjs.RuntimeBehavior\n implements Scalable\n {\n private object: gdjs.RuntimeObject & Scalable;\n\n constructor(\n instanceContainer: gdjs.RuntimeInstanceContainer,\n behaviorData,\n owner: gdjs.RuntimeObject & Scalable\n ) {\n super(instanceContainer, behaviorData, owner);\n this.object = owner;\n }\n\n usesLifecycleFunction(): boolean {\n return false;\n }\n\n updateFromBehaviorData(oldBehaviorData, newBehaviorData): boolean {\n // Nothing to update.\n return true;\n }\n\n onDeActivate() {}\n\n onDestroy() {}\n\n doStepPreEvents(instanceContainer: gdjs.RuntimeInstanceContainer) {}\n\n doStepPostEvents(instanceContainer: gdjs.RuntimeInstanceContainer) {}\n\n setScale(newScale: float): void {\n this.object.setScale(newScale);\n }\n\n setScaleX(newScale: float): void {\n this.object.setScaleX(newScale);\n }\n\n setScaleY(newScale: float): void {\n this.object.setScaleY(newScale);\n }\n\n getScale(): float {\n return this.object.getScale();\n }\n\n getScaleY(): float {\n return this.object.getScaleY();\n }\n\n getScaleX(): float {\n return this.object.getScaleX();\n }\n }\n\n gdjs.registerBehavior(\n 'ScalableCapability::ScalableBehavior',\n gdjs.ScalableBehavior\n );\n}\n"],
|
|
5
|
+
"mappings": "AAKA,GAAU,MAAV,UAAU,EAAV,CAkDS,eACG,GAAK,eAEf,CAGE,YACE,EACA,EACA,EACA,CACA,MAAM,EAAmB,EAAc,GACvC,KAAK,OAAS,EAGhB,uBAAiC,CAC/B,MAAO,GAGT,uBAAuB,EAAiB,EAA0B,CAEhE,MAAO,GAGT,cAAe,EAEf,WAAY,EAEZ,gBAAgB,EAAkD,EAElE,iBAAiB,EAAkD,EAEnE,SAAS,EAAuB,CAC9B,KAAK,OAAO,SAAS,GAGvB,UAAU,EAAuB,CAC/B,KAAK,OAAO,UAAU,GAGxB,UAAU,EAAuB,CAC/B,KAAK,OAAO,UAAU,GAGxB,UAAkB,CAChB,MAAO,MAAK,OAAO,WAGrB,WAAmB,CACjB,MAAO,MAAK,OAAO,YAGrB,WAAmB,CACjB,MAAO,MAAK,OAAO,aArDhB,EAAM,mBAyDb,EAAK,iBACH,uCACA,EAAK,oBA7GC",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../GDevelop/GDJS/Runtime/object-capabilities/TextContainerBehavior.ts"],
|
|
4
|
-
"sourcesContent": ["/*\n * GDevelop JS Platform\n * Copyright 2013-2023 Florian Rival (Florian.Rival@gmail.com). All rights reserved.\n * This project is released under the MIT License.\n */\nnamespace gdjs {\n export interface TextContainer {\n /**\n * Get the text displayed by the object.\n */\n getText(): string;\n\n /**\n * Set the text displayed by the object.\n * @param text The new text\n */\n setText(text: string): void;\n }\n\n /**\n * A behavior that forwards the TextContainer interface to its object.\n */\n export class TextContainerBehavior\n extends gdjs.RuntimeBehavior\n implements TextContainer
|
|
5
|
-
"mappings": "AAKA,GAAU,MAAV,UAAU,EAAV,CAiBS,eACG,GAAK,
|
|
4
|
+
"sourcesContent": ["/*\n * GDevelop JS Platform\n * Copyright 2013-2023 Florian Rival (Florian.Rival@gmail.com). All rights reserved.\n * This project is released under the MIT License.\n */\nnamespace gdjs {\n export interface TextContainer {\n /**\n * Get the text displayed by the object.\n */\n getText(): string;\n\n /**\n * Set the text displayed by the object.\n * @param text The new text\n */\n setText(text: string): void;\n }\n\n /**\n * A behavior that forwards the TextContainer interface to its object.\n */\n export class TextContainerBehavior\n extends gdjs.RuntimeBehavior\n implements TextContainer\n {\n private object: gdjs.RuntimeObject & TextContainer;\n\n constructor(\n instanceContainer: gdjs.RuntimeInstanceContainer,\n behaviorData,\n owner: gdjs.RuntimeObject & TextContainer\n ) {\n super(instanceContainer, behaviorData, owner);\n this.object = owner;\n }\n\n usesLifecycleFunction(): boolean {\n return false;\n }\n\n updateFromBehaviorData(oldBehaviorData, newBehaviorData): boolean {\n // Nothing to update.\n return true;\n }\n\n onDeActivate() {}\n\n onDestroy() {}\n\n doStepPreEvents(instanceContainer: gdjs.RuntimeInstanceContainer) {}\n\n doStepPostEvents(instanceContainer: gdjs.RuntimeInstanceContainer) {}\n\n getText(): string {\n return this.object.getText();\n }\n\n setText(text: string): void {\n this.object.setText(text);\n }\n }\n\n gdjs.registerBehavior(\n 'TextContainerCapability::TextContainerBehavior',\n gdjs.TextContainerBehavior\n );\n}\n"],
|
|
5
|
+
"mappings": "AAKA,GAAU,MAAV,UAAU,EAAV,CAiBS,eACG,GAAK,eAEf,CAGE,YACE,EACA,EACA,EACA,CACA,MAAM,EAAmB,EAAc,GACvC,KAAK,OAAS,EAGhB,uBAAiC,CAC/B,MAAO,GAGT,uBAAuB,EAAiB,EAA0B,CAEhE,MAAO,GAGT,cAAe,EAEf,WAAY,EAEZ,gBAAgB,EAAkD,EAElE,iBAAiB,EAAkD,EAEnE,SAAkB,CAChB,MAAO,MAAK,OAAO,UAGrB,QAAQ,EAAoB,CAC1B,KAAK,OAAO,QAAQ,IArCjB,EAAM,wBAyCb,EAAK,iBACH,iDACA,EAAK,yBA5DC",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../GDevelop/GDJS/Runtime/pixi-renderers/CustomRuntimeObject2DPixiRenderer.ts"],
|
|
4
|
-
"sourcesContent": ["namespace gdjs {\n /**\n * The renderer for a {@link gdjs.CustomRuntimeObject2D} using Pixi.js.\n */\n export class CustomRuntimeObject2DPixiRenderer\n implements gdjs.RuntimeInstanceContainerPixiRenderer
|
|
5
|
-
"mappings": "AAAA,GAAU,MAAV,UAAU,EAAV,CAIS,
|
|
4
|
+
"sourcesContent": ["namespace gdjs {\n /**\n * The renderer for a {@link gdjs.CustomRuntimeObject2D} using Pixi.js.\n */\n export class CustomRuntimeObject2DPixiRenderer\n implements gdjs.RuntimeInstanceContainerPixiRenderer\n {\n _object: gdjs.CustomRuntimeObject;\n _instanceContainer: gdjs.CustomRuntimeObjectInstanceContainer;\n _pixiContainer: PIXI.Container;\n _isContainerDirty: boolean = true;\n _debugDraw: PIXI.Graphics | null = null;\n _debugDrawContainer: PIXI.Container | null = null;\n _debugDrawRenderedObjectsPoints: Record<\n number,\n {\n wasRendered: boolean;\n points: Record<string, PIXI.Text>;\n }\n >;\n\n constructor(\n object: gdjs.CustomRuntimeObject,\n instanceContainer: gdjs.CustomRuntimeObjectInstanceContainer,\n parent: gdjs.RuntimeInstanceContainer\n ) {\n this._object = object;\n this._instanceContainer = instanceContainer;\n\n // TODO (3D) - optimization: don't create a PixiJS container if only 3D objects.\n // And same, in reverse, for 2D only objects.\n this._pixiContainer = new PIXI.Container();\n this._debugDrawRenderedObjectsPoints = {};\n\n // Contains the layers of the scene (and, optionally, debug PIXI objects).\n this._pixiContainer.sortableChildren = true;\n this._debugDraw = null;\n\n const layer = parent.getLayer('');\n if (layer) {\n layer\n .getRenderer()\n .addRendererObject(this._pixiContainer, object.getZOrder());\n }\n }\n\n reinitialize(\n object: gdjs.CustomRuntimeObject,\n parent: gdjs.RuntimeInstanceContainer\n ) {\n this._object = object;\n this._isContainerDirty = true;\n const layer = parent.getLayer('');\n if (layer) {\n layer\n .getRenderer()\n .addRendererObject(this._pixiContainer, object.getZOrder());\n }\n }\n\n getRendererObject() {\n return this._pixiContainer;\n }\n\n get3DRendererObject(): THREE.Object3D | null {\n return null;\n }\n\n /**\n * Update the internal PIXI.Container position, angle...\n */\n _updatePIXIContainer() {\n const scaleX = this._object.getScaleX();\n const scaleY = this._object.getScaleY();\n const opacity = this._object.getOpacity();\n this._pixiContainer.pivot.x = this._object.getUnscaledCenterX();\n this._pixiContainer.pivot.y = this._object.getUnscaledCenterY();\n this._pixiContainer.position.x =\n this._object.getX() + this._pixiContainer.pivot.x * Math.abs(scaleX);\n this._pixiContainer.position.y =\n this._object.getY() + this._pixiContainer.pivot.y * Math.abs(scaleY);\n\n this._pixiContainer.rotation = gdjs.toRad(this._object.angle);\n this._pixiContainer.scale.x =\n scaleX * (this._object.isFlippedX() ? -1 : 1);\n this._pixiContainer.scale.y =\n scaleY * (this._object.isFlippedY() ? -1 : 1);\n this._pixiContainer.visible = !this._object.hidden;\n this._pixiContainer.alpha = opacity / 255;\n\n this._isContainerDirty = false;\n }\n\n /**\n * Call this to make sure the object is ready to be rendered.\n */\n ensureUpToDate() {\n if (this._isContainerDirty) {\n this._updatePIXIContainer();\n }\n }\n\n update(): void {\n this._isContainerDirty = true;\n }\n\n updateX(): void {\n const scaleX = this._object.getScaleX();\n this._pixiContainer.position.x =\n this._object.x + this._pixiContainer.pivot.x * Math.abs(scaleX);\n }\n\n updateY(): void {\n const scaleY = this._object.getScaleY();\n this._pixiContainer.position.y =\n this._object.y + this._pixiContainer.pivot.y * Math.abs(scaleY);\n }\n\n updateAngle(): void {\n this._pixiContainer.rotation = gdjs.toRad(this._object.angle);\n }\n\n updateOpacity(): void {\n const opacity = this._object.getOpacity();\n this._pixiContainer.alpha = opacity / 255;\n }\n\n updateVisibility(): void {\n this._pixiContainer.visible = !this._object.hidden;\n }\n\n getPIXIContainer() {\n return this._pixiContainer;\n }\n\n getPIXIRenderer() {\n return null;\n }\n\n setLayerIndex(layer: gdjs.RuntimeLayer, index: float): void {\n const layerPixiRenderer: gdjs.LayerPixiRenderer = layer.getRenderer();\n let layerPixiObject: PIXI.Container | PIXI.Sprite | null =\n layerPixiRenderer.getRendererObject();\n if (layer.isLightingLayer()) {\n layerPixiObject = layerPixiRenderer.getLightingSprite();\n }\n if (!layerPixiObject) {\n return;\n }\n if (this._pixiContainer.children.indexOf(layerPixiObject) === index) {\n return;\n }\n this._pixiContainer.removeChild(layerPixiObject);\n this._pixiContainer.addChildAt(layerPixiObject, index);\n }\n\n static getAnimationFrameTextureManager(\n imageManager: gdjs.PixiImageManager\n ) {\n return gdjs.SpriteRuntimeObjectPixiRenderer.getAnimationFrameTextureManager(\n imageManager\n );\n }\n }\n\n // Register the class to let the engine use it.\n export type CustomRuntimeObject2DRenderer =\n gdjs.CustomRuntimeObject2DPixiRenderer;\n export const CustomRuntimeObject2DRenderer =\n gdjs.CustomRuntimeObject2DPixiRenderer;\n}\n"],
|
|
5
|
+
"mappings": "AAAA,GAAU,MAAV,UAAU,EAAV,CAIS,OAEP,CAeE,YACE,EACA,EACA,EACA,CAfF,uBAA6B,GAC7B,gBAAmC,KACnC,yBAA6C,KAc3C,KAAK,QAAU,EACf,KAAK,mBAAqB,EAI1B,KAAK,eAAiB,GAAI,MAAK,UAC/B,KAAK,gCAAkC,GAGvC,KAAK,eAAe,iBAAmB,GACvC,KAAK,WAAa,KAElB,KAAM,GAAQ,EAAO,SAAS,IAC9B,AAAI,GACF,EACG,cACA,kBAAkB,KAAK,eAAgB,EAAO,aAIrD,aACE,EACA,EACA,CACA,KAAK,QAAU,EACf,KAAK,kBAAoB,GACzB,KAAM,GAAQ,EAAO,SAAS,IAC9B,AAAI,GACF,EACG,cACA,kBAAkB,KAAK,eAAgB,EAAO,aAIrD,mBAAoB,CAClB,MAAO,MAAK,eAGd,qBAA6C,CAC3C,MAAO,MAMT,sBAAuB,CACrB,KAAM,GAAS,KAAK,QAAQ,YACtB,EAAS,KAAK,QAAQ,YACtB,EAAU,KAAK,QAAQ,aAC7B,KAAK,eAAe,MAAM,EAAI,KAAK,QAAQ,qBAC3C,KAAK,eAAe,MAAM,EAAI,KAAK,QAAQ,qBAC3C,KAAK,eAAe,SAAS,EAC3B,KAAK,QAAQ,OAAS,KAAK,eAAe,MAAM,EAAI,KAAK,IAAI,GAC/D,KAAK,eAAe,SAAS,EAC3B,KAAK,QAAQ,OAAS,KAAK,eAAe,MAAM,EAAI,KAAK,IAAI,GAE/D,KAAK,eAAe,SAAW,EAAK,MAAM,KAAK,QAAQ,OACvD,KAAK,eAAe,MAAM,EACxB,EAAU,MAAK,QAAQ,aAAe,GAAK,GAC7C,KAAK,eAAe,MAAM,EACxB,EAAU,MAAK,QAAQ,aAAe,GAAK,GAC7C,KAAK,eAAe,QAAU,CAAC,KAAK,QAAQ,OAC5C,KAAK,eAAe,MAAQ,EAAU,IAEtC,KAAK,kBAAoB,GAM3B,gBAAiB,CACf,AAAI,KAAK,mBACP,KAAK,uBAIT,QAAe,CACb,KAAK,kBAAoB,GAG3B,SAAgB,CACd,KAAM,GAAS,KAAK,QAAQ,YAC5B,KAAK,eAAe,SAAS,EAC3B,KAAK,QAAQ,EAAI,KAAK,eAAe,MAAM,EAAI,KAAK,IAAI,GAG5D,SAAgB,CACd,KAAM,GAAS,KAAK,QAAQ,YAC5B,KAAK,eAAe,SAAS,EAC3B,KAAK,QAAQ,EAAI,KAAK,eAAe,MAAM,EAAI,KAAK,IAAI,GAG5D,aAAoB,CAClB,KAAK,eAAe,SAAW,EAAK,MAAM,KAAK,QAAQ,OAGzD,eAAsB,CACpB,KAAM,GAAU,KAAK,QAAQ,aAC7B,KAAK,eAAe,MAAQ,EAAU,IAGxC,kBAAyB,CACvB,KAAK,eAAe,QAAU,CAAC,KAAK,QAAQ,OAG9C,kBAAmB,CACjB,MAAO,MAAK,eAGd,iBAAkB,CAChB,MAAO,MAGT,cAAc,EAA0B,EAAoB,CAC1D,KAAM,GAA4C,EAAM,cACxD,GAAI,GACF,EAAkB,oBAIpB,AAHI,EAAM,mBACR,GAAkB,EAAkB,qBAElC,EAAC,GAGD,KAAK,eAAe,SAAS,QAAQ,KAAqB,GAG9D,MAAK,eAAe,YAAY,GAChC,KAAK,eAAe,WAAW,EAAiB,UAG3C,iCACL,EACA,CACA,MAAO,GAAK,gCAAgC,gCAC1C,IA5JC,EAAM,oCAoKA,gCACX,EAAK,oCAzKC",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../GDevelop/GDJS/Runtime/pixi-renderers/DebuggerPixiRenderer.ts"],
|
|
4
|
-
"sourcesContent": ["namespace gdjs {\n /**\n * A renderer for debug instances location of a container using Pixi.js.\n *\n * @see gdjs.CustomRuntimeObject2DPixiRenderer\n */\n export class DebuggerPixiRenderer {\n _instanceContainer: gdjs.RuntimeInstanceContainer;\n _debugDraw: PIXI.Graphics | null = null;\n _debugDrawContainer: PIXI.Container | null = null;\n _debugDrawRenderedObjectsPoints: Record<\n number,\n {\n wasRendered: boolean;\n points: Record<string, PIXI.Text>;\n }\n >;\n\n constructor(instanceContainer: gdjs.RuntimeInstanceContainer) {\n this._instanceContainer = instanceContainer;\n this._debugDrawRenderedObjectsPoints = {};\n this._debugDraw = null;\n }\n\n getRendererObject() {\n return this._debugDrawContainer;\n }\n\n /**\n * Render graphics for debugging purpose. Activate this in `gdjs.RuntimeScene`,\n * in the `renderAndStep` method.\n * @see gdjs.RuntimeInstanceContainer#enableDebugDraw\n */\n renderDebugDraw(\n instances: gdjs.RuntimeObject[],\n showHiddenInstances: boolean,\n showPointsNames: boolean,\n showCustomPoints: boolean\n ) {\n const pixiContainer = this._instanceContainer\n .getRenderer()\n .getRendererObject();\n if (!this._debugDraw || !this._debugDrawContainer) {\n this._debugDrawContainer = new PIXI.Container();\n this._debugDraw = new PIXI.Graphics();\n\n // Add on top of all layers:\n this._debugDrawContainer.addChild(this._debugDraw);\n if (pixiContainer) {\n pixiContainer.addChild(this._debugDrawContainer);\n }\n }\n const debugDraw = this._debugDraw;\n\n // Reset the boolean \"wasRendered\" of all points of objects to false:\n for (let id in this._debugDrawRenderedObjectsPoints) {\n this._debugDrawRenderedObjectsPoints[id].wasRendered = false;\n }\n\n const renderObjectPoint = (\n points: Record<string, PIXI.Text>,\n name: string,\n fillColor: integer,\n x: float,\n y: float\n ) => {\n debugDraw.line.color = fillColor;\n debugDraw.fill.color = fillColor;\n debugDraw.drawCircle(x, y, 3);\n\n if (showPointsNames) {\n if (!points[name]) {\n points[name] = new PIXI.Text(name, {\n fill: fillColor,\n fontSize: 12,\n });\n\n this._debugDrawContainer!.addChild(points[name]);\n }\n\n points[name].position.set(x, y);\n }\n };\n\n debugDraw.clear();\n debugDraw.beginFill();\n debugDraw.alpha = 0.8;\n debugDraw.lineStyle(2, 0x0000ff, 1);\n\n // Draw AABB\n const workingPoint: FloatPoint = [0, 0];\n for (let i = 0; i < instances.length; i++) {\n const object = instances[i];\n const layer = this._instanceContainer.getLayer(object.getLayer());\n\n if (\n (!object.isVisible() || !layer.isVisible()) &&\n !showHiddenInstances\n ) {\n continue;\n }\n\n const rendererObject = object.getRendererObject();\n if (!rendererObject) {\n continue;\n }\n const aabb = object.getAABB();\n debugDraw.fill.alpha = 0.2;\n debugDraw.line.color = 0x778ee8;\n debugDraw.fill.color = 0x778ee8;\n\n const polygon: float[] = [];\n polygon.push.apply(\n polygon,\n layer.applyLayerTransformation(\n aabb.min[0],\n aabb.min[1],\n 0,\n workingPoint\n )\n );\n polygon.push.apply(\n polygon,\n layer.applyLayerTransformation(\n aabb.max[0],\n aabb.min[1],\n 0,\n workingPoint\n )\n );\n polygon.push.apply(\n polygon,\n layer.applyLayerTransformation(\n aabb.max[0],\n aabb.max[1],\n 0,\n workingPoint\n )\n );\n polygon.push.apply(\n polygon,\n layer.applyLayerTransformation(\n aabb.min[0],\n aabb.max[1],\n 0,\n workingPoint\n )\n );\n\n debugDraw.drawPolygon(polygon);\n }\n\n // Draw hitboxes and points\n for (let i = 0; i < instances.length; i++) {\n const object = instances[i];\n const layer = this._instanceContainer.getLayer(object.getLayer());\n\n if (\n (!object.isVisible() || !layer.isVisible()) &&\n !showHiddenInstances\n ) {\n continue;\n }\n\n const rendererObject = object.getRendererObject();\n if (!rendererObject) {\n continue;\n }\n\n // Create the structure to store the points in memory\n const id = object.id;\n if (!this._debugDrawRenderedObjectsPoints[id]) {\n this._debugDrawRenderedObjectsPoints[id] = {\n wasRendered: true,\n points: {},\n };\n }\n const renderedObjectPoints = this._debugDrawRenderedObjectsPoints[id];\n renderedObjectPoints.wasRendered = true;\n\n // Draw hitboxes (sub-optimal performance)\n const hitboxes = object.getHitBoxes();\n for (let j = 0; j < hitboxes.length; j++) {\n // Note that this conversion is sub-optimal, but we don't care\n // as this is for debug draw.\n const polygon: float[] = [];\n hitboxes[j].vertices.forEach((point) => {\n point = layer.applyLayerTransformation(\n point[0],\n point[1],\n 0,\n workingPoint\n );\n\n polygon.push(point[0]);\n polygon.push(point[1]);\n });\n debugDraw.fill.alpha = 0;\n debugDraw.line.alpha = 0.5;\n debugDraw.line.color = 0xff0000;\n debugDraw.drawPolygon(polygon);\n }\n\n // Draw points\n debugDraw.fill.alpha = 0.3;\n\n // Draw Center point\n const centerPoint = layer.applyLayerTransformation(\n object.getCenterXInScene(),\n object.getCenterYInScene(),\n 0,\n workingPoint\n );\n\n renderObjectPoint(\n renderedObjectPoints.points,\n 'Center',\n 0xffff00,\n centerPoint[0],\n centerPoint[1]\n );\n\n // Draw position point\n const positionPoint = layer.applyLayerTransformation(\n object.getX(),\n object.getY(),\n 0,\n workingPoint\n );\n\n renderObjectPoint(\n renderedObjectPoints.points,\n 'Position',\n 0xff0000,\n positionPoint[0],\n positionPoint[1]\n );\n\n // Draw Origin point\n if (object instanceof gdjs.SpriteRuntimeObject) {\n let originPoint = object.getPointPosition('origin');\n // When there is neither rotation nor flipping,\n // the origin point is over the position point.\n if (\n Math.abs(originPoint[0] - positionPoint[0]) >= 1 ||\n Math.abs(originPoint[1] - positionPoint[1]) >= 1\n ) {\n originPoint = layer.applyLayerTransformation(\n originPoint[0],\n originPoint[1],\n 0,\n workingPoint\n );\n\n renderObjectPoint(\n renderedObjectPoints.points,\n 'Origin',\n 0xff0000,\n originPoint[0],\n originPoint[1]\n );\n }\n }\n\n // Draw custom point\n if (showCustomPoints && object instanceof gdjs.SpriteRuntimeObject) {\n const animationFrame = object._animator.getCurrentFrame();\n if (!animationFrame) continue;\n\n for (const customPointName in animationFrame.points.items) {\n let customPoint = object.getPointPosition(customPointName);\n\n customPoint = layer.applyLayerTransformation(\n customPoint[0],\n customPoint[1],\n 0,\n workingPoint\n );\n\n renderObjectPoint(\n renderedObjectPoints.points,\n customPointName,\n 0x0000ff,\n customPoint[0],\n customPoint[1]\n );\n }\n }\n }\n\n // Clean any point text from an object that is not rendered.\n for (const objectID in this._debugDrawRenderedObjectsPoints) {\n const renderedObjectPoints
|
|
5
|
-
"mappings": "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
|
|
4
|
+
"sourcesContent": ["namespace gdjs {\n /**\n * A renderer for debug instances location of a container using Pixi.js.\n *\n * @see gdjs.CustomRuntimeObject2DPixiRenderer\n */\n export class DebuggerPixiRenderer {\n _instanceContainer: gdjs.RuntimeInstanceContainer;\n _debugDraw: PIXI.Graphics | null = null;\n _debugDrawContainer: PIXI.Container | null = null;\n _debugDrawRenderedObjectsPoints: Record<\n number,\n {\n wasRendered: boolean;\n points: Record<string, PIXI.Text>;\n }\n >;\n\n constructor(instanceContainer: gdjs.RuntimeInstanceContainer) {\n this._instanceContainer = instanceContainer;\n this._debugDrawRenderedObjectsPoints = {};\n this._debugDraw = null;\n }\n\n getRendererObject() {\n return this._debugDrawContainer;\n }\n\n /**\n * Render graphics for debugging purpose. Activate this in `gdjs.RuntimeScene`,\n * in the `renderAndStep` method.\n * @see gdjs.RuntimeInstanceContainer#enableDebugDraw\n */\n renderDebugDraw(\n instances: gdjs.RuntimeObject[],\n showHiddenInstances: boolean,\n showPointsNames: boolean,\n showCustomPoints: boolean\n ) {\n const pixiContainer = this._instanceContainer\n .getRenderer()\n .getRendererObject();\n if (!this._debugDraw || !this._debugDrawContainer) {\n this._debugDrawContainer = new PIXI.Container();\n this._debugDraw = new PIXI.Graphics();\n\n // Add on top of all layers:\n this._debugDrawContainer.addChild(this._debugDraw);\n if (pixiContainer) {\n pixiContainer.addChild(this._debugDrawContainer);\n }\n }\n const debugDraw = this._debugDraw;\n\n // Reset the boolean \"wasRendered\" of all points of objects to false:\n for (let id in this._debugDrawRenderedObjectsPoints) {\n this._debugDrawRenderedObjectsPoints[id].wasRendered = false;\n }\n\n const renderObjectPoint = (\n points: Record<string, PIXI.Text>,\n name: string,\n fillColor: integer,\n x: float,\n y: float\n ) => {\n debugDraw.line.color = fillColor;\n debugDraw.fill.color = fillColor;\n debugDraw.drawCircle(x, y, 3);\n\n if (showPointsNames) {\n if (!points[name]) {\n points[name] = new PIXI.Text(name, {\n fill: fillColor,\n fontSize: 12,\n });\n\n this._debugDrawContainer!.addChild(points[name]);\n }\n\n points[name].position.set(x, y);\n }\n };\n\n debugDraw.clear();\n debugDraw.beginFill();\n debugDraw.alpha = 0.8;\n debugDraw.lineStyle(2, 0x0000ff, 1);\n\n // Draw AABB\n const workingPoint: FloatPoint = [0, 0];\n for (let i = 0; i < instances.length; i++) {\n const object = instances[i];\n const layer = this._instanceContainer.getLayer(object.getLayer());\n\n if (\n (!object.isVisible() || !layer.isVisible()) &&\n !showHiddenInstances\n ) {\n continue;\n }\n\n const rendererObject = object.getRendererObject();\n if (!rendererObject) {\n continue;\n }\n const aabb = object.getAABB();\n debugDraw.fill.alpha = 0.2;\n debugDraw.line.color = 0x778ee8;\n debugDraw.fill.color = 0x778ee8;\n\n const polygon: float[] = [];\n polygon.push.apply(\n polygon,\n layer.applyLayerTransformation(\n aabb.min[0],\n aabb.min[1],\n 0,\n workingPoint\n )\n );\n polygon.push.apply(\n polygon,\n layer.applyLayerTransformation(\n aabb.max[0],\n aabb.min[1],\n 0,\n workingPoint\n )\n );\n polygon.push.apply(\n polygon,\n layer.applyLayerTransformation(\n aabb.max[0],\n aabb.max[1],\n 0,\n workingPoint\n )\n );\n polygon.push.apply(\n polygon,\n layer.applyLayerTransformation(\n aabb.min[0],\n aabb.max[1],\n 0,\n workingPoint\n )\n );\n\n debugDraw.drawPolygon(polygon);\n }\n\n // Draw hitboxes and points\n for (let i = 0; i < instances.length; i++) {\n const object = instances[i];\n const layer = this._instanceContainer.getLayer(object.getLayer());\n\n if (\n (!object.isVisible() || !layer.isVisible()) &&\n !showHiddenInstances\n ) {\n continue;\n }\n\n const rendererObject = object.getRendererObject();\n if (!rendererObject) {\n continue;\n }\n\n // Create the structure to store the points in memory\n const id = object.id;\n if (!this._debugDrawRenderedObjectsPoints[id]) {\n this._debugDrawRenderedObjectsPoints[id] = {\n wasRendered: true,\n points: {},\n };\n }\n const renderedObjectPoints = this._debugDrawRenderedObjectsPoints[id];\n renderedObjectPoints.wasRendered = true;\n\n // Draw hitboxes (sub-optimal performance)\n const hitboxes = object.getHitBoxes();\n for (let j = 0; j < hitboxes.length; j++) {\n // Note that this conversion is sub-optimal, but we don't care\n // as this is for debug draw.\n const polygon: float[] = [];\n hitboxes[j].vertices.forEach((point) => {\n point = layer.applyLayerTransformation(\n point[0],\n point[1],\n 0,\n workingPoint\n );\n\n polygon.push(point[0]);\n polygon.push(point[1]);\n });\n debugDraw.fill.alpha = 0;\n debugDraw.line.alpha = 0.5;\n debugDraw.line.color = 0xff0000;\n debugDraw.drawPolygon(polygon);\n }\n\n // Draw points\n debugDraw.fill.alpha = 0.3;\n\n // Draw Center point\n const centerPoint = layer.applyLayerTransformation(\n object.getCenterXInScene(),\n object.getCenterYInScene(),\n 0,\n workingPoint\n );\n\n renderObjectPoint(\n renderedObjectPoints.points,\n 'Center',\n 0xffff00,\n centerPoint[0],\n centerPoint[1]\n );\n\n // Draw position point\n const positionPoint = layer.applyLayerTransformation(\n object.getX(),\n object.getY(),\n 0,\n workingPoint\n );\n\n renderObjectPoint(\n renderedObjectPoints.points,\n 'Position',\n 0xff0000,\n positionPoint[0],\n positionPoint[1]\n );\n\n // Draw Origin point\n if (object instanceof gdjs.SpriteRuntimeObject) {\n let originPoint = object.getPointPosition('origin');\n // When there is neither rotation nor flipping,\n // the origin point is over the position point.\n if (\n Math.abs(originPoint[0] - positionPoint[0]) >= 1 ||\n Math.abs(originPoint[1] - positionPoint[1]) >= 1\n ) {\n originPoint = layer.applyLayerTransformation(\n originPoint[0],\n originPoint[1],\n 0,\n workingPoint\n );\n\n renderObjectPoint(\n renderedObjectPoints.points,\n 'Origin',\n 0xff0000,\n originPoint[0],\n originPoint[1]\n );\n }\n }\n\n // Draw custom point\n if (showCustomPoints && object instanceof gdjs.SpriteRuntimeObject) {\n const animationFrame = object._animator.getCurrentFrame();\n if (!animationFrame) continue;\n\n for (const customPointName in animationFrame.points.items) {\n let customPoint = object.getPointPosition(customPointName);\n\n customPoint = layer.applyLayerTransformation(\n customPoint[0],\n customPoint[1],\n 0,\n workingPoint\n );\n\n renderObjectPoint(\n renderedObjectPoints.points,\n customPointName,\n 0x0000ff,\n customPoint[0],\n customPoint[1]\n );\n }\n }\n }\n\n // Clean any point text from an object that is not rendered.\n for (const objectID in this._debugDrawRenderedObjectsPoints) {\n const renderedObjectPoints =\n this._debugDrawRenderedObjectsPoints[objectID];\n if (renderedObjectPoints.wasRendered) continue;\n\n const points = renderedObjectPoints.points;\n for (const name in points) {\n this._debugDrawContainer.removeChild(points[name]);\n }\n }\n\n debugDraw.endFill();\n }\n\n clearDebugDraw(): void {\n if (this._debugDraw) {\n this._debugDraw.clear();\n }\n\n if (this._debugDrawContainer) {\n this._debugDrawContainer.destroy({\n children: true,\n });\n const pixiContainer: PIXI.Container | null = this._instanceContainer\n .getRenderer()\n .getRendererObject();\n if (pixiContainer) {\n pixiContainer.removeChild(this._debugDrawContainer);\n }\n }\n this._debugDraw = null;\n this._debugDrawContainer = null;\n this._debugDrawRenderedObjectsPoints = {};\n }\n }\n\n // Register the class to let the engine use it.\n export type DebuggerRenderer = gdjs.DebuggerPixiRenderer;\n export const DebuggerRenderer = gdjs.DebuggerPixiRenderer;\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|