excalibur 0.25.2 → 0.25.3
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/CHANGELOG.md +7 -2
- package/build/dist/Actions/Action/Blink.js +51 -0
- package/build/dist/Actions/Action/Blink.js.map +1 -0
- package/build/dist/Actions/Action/CallMethod.js +21 -0
- package/build/dist/Actions/Action/CallMethod.js.map +1 -0
- package/build/dist/Actions/Action/Delay.js +25 -0
- package/build/dist/Actions/Action/Delay.js.map +1 -0
- package/build/dist/Actions/Action/Die.js +22 -0
- package/build/dist/Actions/Action/Die.js.map +1 -0
- package/build/dist/Actions/Action/EaseTo.js +69 -0
- package/build/dist/Actions/Action/EaseTo.js.map +1 -0
- package/build/dist/Actions/Action/Fade.js +46 -0
- package/build/dist/Actions/Action/Fade.js.map +1 -0
- package/build/dist/Actions/Action/Follow.js +55 -0
- package/build/dist/Actions/Action/Follow.js.map +1 -0
- package/build/dist/Actions/Action/Meet.js +52 -0
- package/build/dist/Actions/Action/Meet.js.map +1 -0
- package/build/dist/Actions/Action/MoveBy.js +47 -0
- package/build/dist/Actions/Action/MoveBy.js.map +1 -0
- package/build/dist/Actions/Action/MoveTo.js +40 -0
- package/build/dist/Actions/Action/MoveTo.js.map +1 -0
- package/build/dist/Actions/Action/Repeat.js +31 -0
- package/build/dist/Actions/Action/Repeat.js.map +1 -0
- package/build/dist/Actions/Action/RepeatForever.js +37 -0
- package/build/dist/Actions/Action/RepeatForever.js.map +1 -0
- package/build/dist/Actions/Action/RotateBy.js +91 -0
- package/build/dist/Actions/Action/RotateBy.js.map +1 -0
- package/build/dist/Actions/Action/RotateTo.js +90 -0
- package/build/dist/Actions/Action/RotateTo.js.map +1 -0
- package/build/dist/Actions/Action/ScaleBy.js +45 -0
- package/build/dist/Actions/Action/ScaleBy.js.map +1 -0
- package/build/dist/Actions/Action/ScaleTo.js +56 -0
- package/build/dist/Actions/Action/ScaleTo.js.map +1 -0
- package/build/dist/Actions/Action.js +2 -0
- package/build/dist/Actions/Action.js.map +1 -0
- package/build/dist/Actions/ActionContext.js +305 -0
- package/build/dist/Actions/ActionContext.js.map +1 -0
- package/build/dist/Actions/ActionQueue.js +87 -0
- package/build/dist/Actions/ActionQueue.js.map +1 -0
- package/build/dist/Actions/Actionable.js +2 -0
- package/build/dist/Actions/Actionable.js.map +1 -0
- package/build/dist/Actions/ActionsComponent.js +198 -0
- package/build/dist/Actions/ActionsComponent.js.map +1 -0
- package/build/dist/Actions/ActionsSystem.js +18 -0
- package/build/dist/Actions/ActionsSystem.js.map +1 -0
- package/build/dist/Actions/Index.js +22 -0
- package/build/dist/Actions/Index.js.map +1 -0
- package/build/dist/Actions/RotationType.js +27 -0
- package/build/dist/Actions/RotationType.js.map +1 -0
- package/build/dist/Actor.js +831 -0
- package/build/dist/Actor.js.map +1 -0
- package/build/dist/Camera.js +663 -0
- package/build/dist/Camera.js.map +1 -0
- package/build/dist/Class.js +48 -0
- package/build/dist/Class.js.map +1 -0
- package/build/dist/Collision/BodyComponent.js +351 -0
- package/build/dist/Collision/BodyComponent.js.map +1 -0
- package/build/dist/Collision/BoundingBox.js +361 -0
- package/build/dist/Collision/BoundingBox.js.map +1 -0
- package/build/dist/Collision/ColliderComponent.js +198 -0
- package/build/dist/Collision/ColliderComponent.js.map +1 -0
- package/build/dist/Collision/Colliders/CircleCollider.js +264 -0
- package/build/dist/Collision/Colliders/CircleCollider.js.map +1 -0
- package/build/dist/Collision/Colliders/ClosestLineJumpTable.js +211 -0
- package/build/dist/Collision/Colliders/ClosestLineJumpTable.js.map +1 -0
- package/build/dist/Collision/Colliders/Collider.js +26 -0
- package/build/dist/Collision/Colliders/Collider.js.map +1 -0
- package/build/dist/Collision/Colliders/CollisionJumpTable.js +301 -0
- package/build/dist/Collision/Colliders/CollisionJumpTable.js.map +1 -0
- package/build/dist/Collision/Colliders/CompositeCollider.js +232 -0
- package/build/dist/Collision/Colliders/CompositeCollider.js.map +1 -0
- package/build/dist/Collision/Colliders/EdgeCollider.js +253 -0
- package/build/dist/Collision/Colliders/EdgeCollider.js.map +1 -0
- package/build/dist/Collision/Colliders/PolygonCollider.js +389 -0
- package/build/dist/Collision/Colliders/PolygonCollider.js.map +1 -0
- package/build/dist/Collision/Colliders/SeparatingAxis.js +67 -0
- package/build/dist/Collision/Colliders/SeparatingAxis.js.map +1 -0
- package/build/dist/Collision/Colliders/Shape.js +102 -0
- package/build/dist/Collision/Colliders/Shape.js.map +1 -0
- package/build/dist/Collision/CollisionSystem.js +116 -0
- package/build/dist/Collision/CollisionSystem.js.map +1 -0
- package/build/dist/Collision/CollisionType.js +33 -0
- package/build/dist/Collision/CollisionType.js.map +1 -0
- package/build/dist/Collision/Detection/CollisionContact.js +46 -0
- package/build/dist/Collision/Detection/CollisionContact.js.map +1 -0
- package/build/dist/Collision/Detection/CollisionProcessor.js +2 -0
- package/build/dist/Collision/Detection/CollisionProcessor.js.map +1 -0
- package/build/dist/Collision/Detection/DynamicTree.js +442 -0
- package/build/dist/Collision/Detection/DynamicTree.js.map +1 -0
- package/build/dist/Collision/Detection/DynamicTreeCollisionProcessor.js +211 -0
- package/build/dist/Collision/Detection/DynamicTreeCollisionProcessor.js.map +1 -0
- package/build/dist/Collision/Detection/Pair.js +92 -0
- package/build/dist/Collision/Detection/Pair.js.map +1 -0
- package/build/dist/Collision/Group/CollisionGroup.js +114 -0
- package/build/dist/Collision/Group/CollisionGroup.js.map +1 -0
- package/build/dist/Collision/Group/CollisionGroupManager.js +52 -0
- package/build/dist/Collision/Group/CollisionGroupManager.js.map +1 -0
- package/build/dist/Collision/Index.js +29 -0
- package/build/dist/Collision/Index.js.map +1 -0
- package/build/dist/Collision/Integrator.js +11 -0
- package/build/dist/Collision/Integrator.js.map +1 -0
- package/build/dist/Collision/MotionSystem.js +42 -0
- package/build/dist/Collision/MotionSystem.js.map +1 -0
- package/build/dist/Collision/Physics.js +163 -0
- package/build/dist/Collision/Physics.js.map +1 -0
- package/build/dist/Collision/Side.js +51 -0
- package/build/dist/Collision/Side.js.map +1 -0
- package/build/dist/Collision/Solver/ArcadeSolver.js +101 -0
- package/build/dist/Collision/Solver/ArcadeSolver.js.map +1 -0
- package/build/dist/Collision/Solver/ContactConstraintPoint.js +83 -0
- package/build/dist/Collision/Solver/ContactConstraintPoint.js.map +1 -0
- package/build/dist/Collision/Solver/RealisticSolver.js +248 -0
- package/build/dist/Collision/Solver/RealisticSolver.js.map +1 -0
- package/build/dist/Collision/Solver/Solver.js +37 -0
- package/build/dist/Collision/Solver/Solver.js.map +1 -0
- package/build/dist/Color.js +461 -0
- package/build/dist/Color.js.map +1 -0
- package/build/dist/Configurable.js +32 -0
- package/build/dist/Configurable.js.map +1 -0
- package/build/dist/Debug/Debug.js +375 -0
- package/build/dist/Debug/Debug.js.map +1 -0
- package/build/dist/Debug/DebugFlags.js +40 -0
- package/build/dist/Debug/DebugFlags.js.map +1 -0
- package/build/dist/Debug/DebugSystem.js +251 -0
- package/build/dist/Debug/DebugSystem.js.map +1 -0
- package/build/dist/Debug/index.js +4 -0
- package/build/dist/Debug/index.js.map +1 -0
- package/build/dist/Deprecated.js +2 -0
- package/build/dist/Deprecated.js.map +1 -0
- package/build/dist/Drawing/Animation.js +294 -0
- package/build/dist/Drawing/Animation.js.map +1 -0
- package/build/dist/Drawing/CanvasDrawComponent.js +16 -0
- package/build/dist/Drawing/CanvasDrawComponent.js.map +1 -0
- package/build/dist/Drawing/CanvasDrawingSystem.js +95 -0
- package/build/dist/Drawing/CanvasDrawingSystem.js.map +1 -0
- package/build/dist/Drawing/Index.js +10 -0
- package/build/dist/Drawing/Index.js.map +1 -0
- package/build/dist/Drawing/Polygon.js +139 -0
- package/build/dist/Drawing/Polygon.js.map +1 -0
- package/build/dist/Drawing/Sprite.js +355 -0
- package/build/dist/Drawing/Sprite.js.map +1 -0
- package/build/dist/Drawing/SpriteEffects.js +246 -0
- package/build/dist/Drawing/SpriteEffects.js.map +1 -0
- package/build/dist/Drawing/SpriteSheet.js +413 -0
- package/build/dist/Drawing/SpriteSheet.js.map +1 -0
- package/build/dist/Drawing/Texture.js +69 -0
- package/build/dist/Drawing/Texture.js.map +1 -0
- package/build/dist/Engine.d.ts +4 -1
- package/build/dist/Engine.js +985 -0
- package/build/dist/Engine.js.map +1 -0
- package/build/dist/EntityComponentSystem/Component.js +65 -0
- package/build/dist/EntityComponentSystem/Component.js.map +1 -0
- package/build/dist/EntityComponentSystem/Components/MotionComponent.js +33 -0
- package/build/dist/EntityComponentSystem/Components/MotionComponent.js.map +1 -0
- package/build/dist/EntityComponentSystem/Components/TransformComponent.js +249 -0
- package/build/dist/EntityComponentSystem/Components/TransformComponent.js.map +1 -0
- package/build/dist/EntityComponentSystem/Entity.js +452 -0
- package/build/dist/EntityComponentSystem/Entity.js.map +1 -0
- package/build/dist/EntityComponentSystem/EntityManager.js +128 -0
- package/build/dist/EntityComponentSystem/EntityManager.js.map +1 -0
- package/build/dist/EntityComponentSystem/Query.js +91 -0
- package/build/dist/EntityComponentSystem/Query.js.map +1 -0
- package/build/dist/EntityComponentSystem/QueryManager.js +90 -0
- package/build/dist/EntityComponentSystem/QueryManager.js.map +1 -0
- package/build/dist/EntityComponentSystem/System.js +76 -0
- package/build/dist/EntityComponentSystem/System.js.map +1 -0
- package/build/dist/EntityComponentSystem/SystemManager.js +102 -0
- package/build/dist/EntityComponentSystem/SystemManager.js.map +1 -0
- package/build/dist/EntityComponentSystem/Util.js +5 -0
- package/build/dist/EntityComponentSystem/Util.js.map +1 -0
- package/build/dist/EntityComponentSystem/World.js +55 -0
- package/build/dist/EntityComponentSystem/World.js.map +1 -0
- package/build/dist/EntityComponentSystem/index.js +11 -0
- package/build/dist/EntityComponentSystem/index.js.map +1 -0
- package/build/dist/EventDispatcher.js +114 -0
- package/build/dist/EventDispatcher.js.map +1 -0
- package/build/dist/Events/ExEvent.js +12 -0
- package/build/dist/Events/ExEvent.js.map +1 -0
- package/build/dist/Events/MediaEvents.js +75 -0
- package/build/dist/Events/MediaEvents.js.map +1 -0
- package/build/dist/Events/PointerEvents.js +52 -0
- package/build/dist/Events/PointerEvents.js.map +1 -0
- package/build/dist/Events.js +497 -0
- package/build/dist/Events.js.map +1 -0
- package/build/dist/Flags.js +90 -0
- package/build/dist/Flags.js.map +1 -0
- package/build/dist/Graphics/Animation.js +310 -0
- package/build/dist/Graphics/Animation.js.map +1 -0
- package/build/dist/Graphics/Canvas.js +38 -0
- package/build/dist/Graphics/Canvas.js.map +1 -0
- package/build/dist/Graphics/Circle.js +47 -0
- package/build/dist/Graphics/Circle.js.map +1 -0
- package/build/dist/Graphics/Context/ExcaliburGraphicsContext.js +2 -0
- package/build/dist/Graphics/Context/ExcaliburGraphicsContext.js.map +1 -0
- package/build/dist/Graphics/Context/ExcaliburGraphicsContext2DCanvas.js +207 -0
- package/build/dist/Graphics/Context/ExcaliburGraphicsContext2DCanvas.js.map +1 -0
- package/build/dist/Graphics/Context/ExcaliburGraphicsContextWebGL.js +331 -0
- package/build/dist/Graphics/Context/ExcaliburGraphicsContextWebGL.js.map +1 -0
- package/build/dist/Graphics/Context/circle-renderer/circle-renderer.js +160 -0
- package/build/dist/Graphics/Context/circle-renderer/circle-renderer.js.map +1 -0
- package/build/dist/Graphics/Context/debug-text.js +47 -0
- package/build/dist/Graphics/Context/debug-text.js.map +1 -0
- package/build/dist/Graphics/Context/image-renderer/image-renderer.js +209 -0
- package/build/dist/Graphics/Context/image-renderer/image-renderer.js.map +1 -0
- package/build/dist/Graphics/Context/line-renderer/line-renderer.js +87 -0
- package/build/dist/Graphics/Context/line-renderer/line-renderer.js.map +1 -0
- package/build/dist/Graphics/Context/point-renderer/point-renderer.js +82 -0
- package/build/dist/Graphics/Context/point-renderer/point-renderer.js.map +1 -0
- package/build/dist/Graphics/Context/quad-index-buffer.js +69 -0
- package/build/dist/Graphics/Context/quad-index-buffer.js.map +1 -0
- package/build/dist/Graphics/Context/rectangle-renderer/rectangle-renderer.js +272 -0
- package/build/dist/Graphics/Context/rectangle-renderer/rectangle-renderer.js.map +1 -0
- package/build/dist/Graphics/Context/render-source.js +16 -0
- package/build/dist/Graphics/Context/render-source.js.map +1 -0
- package/build/dist/Graphics/Context/render-target.js +65 -0
- package/build/dist/Graphics/Context/render-target.js.map +1 -0
- package/build/dist/Graphics/Context/renderer.js +2 -0
- package/build/dist/Graphics/Context/renderer.js.map +1 -0
- package/build/dist/Graphics/Context/screen-pass-painter/screen-pass-painter.js +53 -0
- package/build/dist/Graphics/Context/screen-pass-painter/screen-pass-painter.js.map +1 -0
- package/build/dist/Graphics/Context/shader.js +236 -0
- package/build/dist/Graphics/Context/shader.js.map +1 -0
- package/build/dist/Graphics/Context/state-stack.js +27 -0
- package/build/dist/Graphics/Context/state-stack.js.map +1 -0
- package/build/dist/Graphics/Context/texture-loader.d.ts +8 -0
- package/build/dist/Graphics/Context/texture-loader.js +121 -0
- package/build/dist/Graphics/Context/texture-loader.js.map +1 -0
- package/build/dist/Graphics/Context/transform-stack.js +30 -0
- package/build/dist/Graphics/Context/transform-stack.js.map +1 -0
- package/build/dist/Graphics/Context/vertex-buffer.js +45 -0
- package/build/dist/Graphics/Context/vertex-buffer.js.map +1 -0
- package/build/dist/Graphics/Context/vertex-layout.js +93 -0
- package/build/dist/Graphics/Context/vertex-layout.js.map +1 -0
- package/build/dist/Graphics/Context/webgl-adapter.js +19 -0
- package/build/dist/Graphics/Context/webgl-adapter.js.map +1 -0
- package/build/dist/Graphics/Context/webgl-util.js +105 -0
- package/build/dist/Graphics/Context/webgl-util.js.map +1 -0
- package/build/dist/Graphics/DebugGraphicsComponent.js +15 -0
- package/build/dist/Graphics/DebugGraphicsComponent.js.map +1 -0
- package/build/dist/Graphics/Filtering.js +17 -0
- package/build/dist/Graphics/Filtering.js.map +1 -0
- package/build/dist/Graphics/Font.js +293 -0
- package/build/dist/Graphics/Font.js.map +1 -0
- package/build/dist/Graphics/FontCommon.js +109 -0
- package/build/dist/Graphics/FontCommon.js.map +1 -0
- package/build/dist/Graphics/Graphic.js +200 -0
- package/build/dist/Graphics/Graphic.js.map +1 -0
- package/build/dist/Graphics/GraphicsComponent.js +290 -0
- package/build/dist/Graphics/GraphicsComponent.js.map +1 -0
- package/build/dist/Graphics/GraphicsDiagnostics.js +9 -0
- package/build/dist/Graphics/GraphicsDiagnostics.js.map +1 -0
- package/build/dist/Graphics/GraphicsGroup.js +69 -0
- package/build/dist/Graphics/GraphicsGroup.js.map +1 -0
- package/build/dist/Graphics/GraphicsSystem.js +153 -0
- package/build/dist/Graphics/GraphicsSystem.js.map +1 -0
- package/build/dist/Graphics/ImageSource.js +116 -0
- package/build/dist/Graphics/ImageSource.js.map +1 -0
- package/build/dist/Graphics/Polygon.js +59 -0
- package/build/dist/Graphics/Polygon.js.map +1 -0
- package/build/dist/Graphics/PostProcessor/ColorBlindnessMode.js +7 -0
- package/build/dist/Graphics/PostProcessor/ColorBlindnessMode.js.map +1 -0
- package/build/dist/Graphics/PostProcessor/ColorBlindnessPostProcessor.js +52 -0
- package/build/dist/Graphics/PostProcessor/ColorBlindnessPostProcessor.js.map +1 -0
- package/build/dist/Graphics/PostProcessor/PostProcessor.js +2 -0
- package/build/dist/Graphics/PostProcessor/PostProcessor.js.map +1 -0
- package/build/dist/Graphics/PostProcessor/ScreenShader.js +56 -0
- package/build/dist/Graphics/PostProcessor/ScreenShader.js.map +1 -0
- package/build/dist/Graphics/Raster.js +207 -0
- package/build/dist/Graphics/Raster.js.map +1 -0
- package/build/dist/Graphics/Rectangle.js +29 -0
- package/build/dist/Graphics/Rectangle.js.map +1 -0
- package/build/dist/Graphics/Sprite.js +103 -0
- package/build/dist/Graphics/Sprite.js.map +1 -0
- package/build/dist/Graphics/SpriteFont.js +120 -0
- package/build/dist/Graphics/SpriteFont.js.map +1 -0
- package/build/dist/Graphics/SpriteSheet.js +115 -0
- package/build/dist/Graphics/SpriteSheet.js.map +1 -0
- package/build/dist/Graphics/Text.js +94 -0
- package/build/dist/Graphics/Text.js.map +1 -0
- package/build/dist/Graphics/index.js +42 -0
- package/build/dist/Graphics/index.js.map +1 -0
- package/build/dist/Id.js +8 -0
- package/build/dist/Id.js.map +1 -0
- package/build/dist/Input/CapturePointerConfig.js +5 -0
- package/build/dist/Input/CapturePointerConfig.js.map +1 -0
- package/build/dist/Input/EngineInput.js +2 -0
- package/build/dist/Input/EngineInput.js.map +1 -0
- package/build/dist/Input/Gamepad.js +358 -0
- package/build/dist/Input/Gamepad.js.map +1 -0
- package/build/dist/Input/Index.js +22 -0
- package/build/dist/Input/Index.js.map +1 -0
- package/build/dist/Input/Keyboard.js +267 -0
- package/build/dist/Input/Keyboard.js.map +1 -0
- package/build/dist/Input/NativePointerButton.js +12 -0
- package/build/dist/Input/NativePointerButton.js.map +1 -0
- package/build/dist/Input/PointerAbstraction.js +41 -0
- package/build/dist/Input/PointerAbstraction.js.map +1 -0
- package/build/dist/Input/PointerButton.js +12 -0
- package/build/dist/Input/PointerButton.js.map +1 -0
- package/build/dist/Input/PointerComponent.js +28 -0
- package/build/dist/Input/PointerComponent.js.map +1 -0
- package/build/dist/Input/PointerEvent.js +25 -0
- package/build/dist/Input/PointerEvent.js.map +1 -0
- package/build/dist/Input/PointerEventReceiver.js +414 -0
- package/build/dist/Input/PointerEventReceiver.js.map +1 -0
- package/build/dist/Input/PointerScope.js +16 -0
- package/build/dist/Input/PointerScope.js.map +1 -0
- package/build/dist/Input/PointerSystem.js +217 -0
- package/build/dist/Input/PointerSystem.js.map +1 -0
- package/build/dist/Input/PointerType.js +11 -0
- package/build/dist/Input/PointerType.js.map +1 -0
- package/build/dist/Input/WheelDeltaMode.js +7 -0
- package/build/dist/Input/WheelDeltaMode.js.map +1 -0
- package/build/dist/Input/WheelEvent.js +21 -0
- package/build/dist/Input/WheelEvent.js.map +1 -0
- package/build/dist/Interfaces/Audio.js +2 -0
- package/build/dist/Interfaces/Audio.js.map +1 -0
- package/build/dist/Interfaces/AudioImplementation.js +11 -0
- package/build/dist/Interfaces/AudioImplementation.js.map +1 -0
- package/build/dist/Interfaces/Clonable.js +2 -0
- package/build/dist/Interfaces/Clonable.js.map +1 -0
- package/build/dist/Interfaces/Drawable.js +2 -0
- package/build/dist/Interfaces/Drawable.js.map +1 -0
- package/build/dist/Interfaces/Evented.js +2 -0
- package/build/dist/Interfaces/Evented.js.map +1 -0
- package/build/dist/Interfaces/Index.js +10 -0
- package/build/dist/Interfaces/Index.js.map +1 -0
- package/build/dist/Interfaces/LifecycleEvents.js +51 -0
- package/build/dist/Interfaces/LifecycleEvents.js.map +1 -0
- package/build/dist/Interfaces/Loadable.js +2 -0
- package/build/dist/Interfaces/Loadable.js.map +1 -0
- package/build/dist/Interfaces/PointerEventHandlers.js +2 -0
- package/build/dist/Interfaces/PointerEventHandlers.js.map +1 -0
- package/build/dist/Interfaces/Trait.js +2 -0
- package/build/dist/Interfaces/Trait.js.map +1 -0
- package/build/dist/Label.js +273 -0
- package/build/dist/Label.js.map +1 -0
- package/build/dist/Loader.js +367 -0
- package/build/dist/Loader.js.map +1 -0
- package/build/dist/Math/Index.js +10 -0
- package/build/dist/Math/Index.js.map +1 -0
- package/build/dist/Math/Random.js +239 -0
- package/build/dist/Math/Random.js.map +1 -0
- package/build/dist/Math/global-coordinates.js +30 -0
- package/build/dist/Math/global-coordinates.js.map +1 -0
- package/build/dist/Math/line.js +194 -0
- package/build/dist/Math/line.js.map +1 -0
- package/build/dist/Math/matrix.js +446 -0
- package/build/dist/Math/matrix.js.map +1 -0
- package/build/dist/Math/projection.js +24 -0
- package/build/dist/Math/projection.js.map +1 -0
- package/build/dist/Math/ray.js +52 -0
- package/build/dist/Math/ray.js.map +1 -0
- package/build/dist/Math/util.js +82 -0
- package/build/dist/Math/util.js.map +1 -0
- package/build/dist/Math/vector-view.js +25 -0
- package/build/dist/Math/vector-view.js.map +1 -0
- package/build/dist/Math/vector.js +326 -0
- package/build/dist/Math/vector.js.map +1 -0
- package/build/dist/Particles.js +449 -0
- package/build/dist/Particles.js.map +1 -0
- package/build/dist/Polyfill.js +56 -0
- package/build/dist/Polyfill.js.map +1 -0
- package/build/dist/Promises.js +205 -0
- package/build/dist/Promises.js.map +1 -0
- package/build/dist/Resources/Gif.js +479 -0
- package/build/dist/Resources/Gif.js.map +1 -0
- package/build/dist/Resources/Index.js +4 -0
- package/build/dist/Resources/Index.js.map +1 -0
- package/build/dist/Resources/Resource.js +74 -0
- package/build/dist/Resources/Resource.js.map +1 -0
- package/build/dist/Resources/Sound/AudioContext.js +16 -0
- package/build/dist/Resources/Sound/AudioContext.js.map +1 -0
- package/build/dist/Resources/Sound/Index.js +4 -0
- package/build/dist/Resources/Sound/Index.js.map +1 -0
- package/build/dist/Resources/Sound/Sound.js +240 -0
- package/build/dist/Resources/Sound/Sound.js.map +1 -0
- package/build/dist/Resources/Sound/WebAudioInstance.js +160 -0
- package/build/dist/Resources/Sound/WebAudioInstance.js.map +1 -0
- package/build/dist/Scene.js +458 -0
- package/build/dist/Scene.js.map +1 -0
- package/build/dist/Screen.js +634 -0
- package/build/dist/Screen.js.map +1 -0
- package/build/dist/ScreenElement.js +29 -0
- package/build/dist/ScreenElement.js.map +1 -0
- package/build/dist/TileMap.js +488 -0
- package/build/dist/TileMap.js.map +1 -0
- package/build/dist/Timer.js +198 -0
- package/build/dist/Timer.js.map +1 -0
- package/build/dist/Traits/Index.js +5 -0
- package/build/dist/Traits/Index.js.map +1 -0
- package/build/dist/Traits/OffscreenCulling.js +35 -0
- package/build/dist/Traits/OffscreenCulling.js.map +1 -0
- package/build/dist/Trigger.js +113 -0
- package/build/dist/Trigger.js.map +1 -0
- package/build/dist/Util/Actors.js +19 -0
- package/build/dist/Util/Actors.js.map +1 -0
- package/build/dist/Util/Browser.js +66 -0
- package/build/dist/Util/Browser.js.map +1 -0
- package/build/dist/Util/Clock.js +219 -0
- package/build/dist/Util/Clock.js.map +1 -0
- package/build/dist/Util/CullingBox.js +104 -0
- package/build/dist/Util/CullingBox.js.map +1 -0
- package/build/dist/Util/Decorators.js +78 -0
- package/build/dist/Util/Decorators.js.map +1 -0
- package/build/dist/Util/Detector.js +167 -0
- package/build/dist/Util/Detector.js.map +1 -0
- package/build/dist/Util/DrawUtil.js +117 -0
- package/build/dist/Util/DrawUtil.js.map +1 -0
- package/build/dist/Util/EasingFunctions.js +118 -0
- package/build/dist/Util/EasingFunctions.js.map +1 -0
- package/build/dist/Util/Fps.js +47 -0
- package/build/dist/Util/Fps.js.map +1 -0
- package/build/dist/Util/Index.js +7 -0
- package/build/dist/Util/Index.js.map +1 -0
- package/build/dist/Util/Log.js +195 -0
- package/build/dist/Util/Log.js.map +1 -0
- package/build/dist/Util/Observable.js +60 -0
- package/build/dist/Util/Observable.js.map +1 -0
- package/build/dist/Util/Pool.js +66 -0
- package/build/dist/Util/Pool.js.map +1 -0
- package/build/dist/Util/SortedList.js +261 -0
- package/build/dist/Util/SortedList.js.map +1 -0
- package/build/dist/Util/Sound.js +22 -0
- package/build/dist/Util/Sound.js.map +1 -0
- package/build/dist/Util/Util.js +294 -0
- package/build/dist/Util/Util.js.map +1 -0
- package/build/dist/Util/Watch.js +67 -0
- package/build/dist/Util/Watch.js.map +1 -0
- package/build/dist/Util/WebAudio.js +62 -0
- package/build/dist/Util/WebAudio.js.map +1 -0
- package/build/dist/excalibur.js +101 -22
- package/build/dist/excalibur.js.map +1 -1
- package/build/dist/excalibur.min.js +1 -1
- package/build/dist/excalibur.min.js.LICENSE.txt +1 -1
- package/build/dist/excalibur.min.js.map +1 -1
- package/build/dist/index.js +74 -0
- package/build/dist/index.js.map +1 -0
- package/build/esm/Engine.d.ts +4 -1
- package/build/esm/Graphics/Context/texture-loader.d.ts +8 -0
- package/build/esm/excalibur.js +101 -22
- package/build/esm/excalibur.js.map +1 -1
- package/build/esm/excalibur.min.js +1 -1
- package/build/esm/excalibur.min.js.LICENSE.txt +1 -1
- package/build/esm/excalibur.min.js.map +1 -1
- package/package.json +23 -22
|
@@ -0,0 +1,458 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { ScreenElement } from './ScreenElement';
|
|
8
|
+
import { InitializeEvent, PreUpdateEvent, PostUpdateEvent, PreDrawEvent, PostDrawEvent, PreDebugDrawEvent, PostDebugDrawEvent } from './Events';
|
|
9
|
+
import { Logger } from './Util/Log';
|
|
10
|
+
import { Timer } from './Timer';
|
|
11
|
+
import { TileMap } from './TileMap';
|
|
12
|
+
import { Camera } from './Camera';
|
|
13
|
+
import { Actor } from './Actor';
|
|
14
|
+
import { Class } from './Class';
|
|
15
|
+
import * as Util from './Util/Util';
|
|
16
|
+
import * as ActorUtils from './Util/Actors';
|
|
17
|
+
import { Trigger } from './Trigger';
|
|
18
|
+
import { SystemType } from './EntityComponentSystem/System';
|
|
19
|
+
import { obsolete } from './Util/Decorators';
|
|
20
|
+
import { World } from './EntityComponentSystem/World';
|
|
21
|
+
import { MotionSystem } from './Collision/MotionSystem';
|
|
22
|
+
import { CollisionSystem } from './Collision/CollisionSystem';
|
|
23
|
+
import { Entity } from './EntityComponentSystem/Entity';
|
|
24
|
+
import { GraphicsSystem } from './Graphics/GraphicsSystem';
|
|
25
|
+
import { CanvasDrawingSystem } from './Drawing/CanvasDrawingSystem';
|
|
26
|
+
import { Flags, Legacy } from './Flags';
|
|
27
|
+
import { DebugSystem } from './Debug/DebugSystem';
|
|
28
|
+
import { PointerSystem } from './Input/PointerSystem';
|
|
29
|
+
import { ActionsSystem } from './Actions/ActionsSystem';
|
|
30
|
+
/**
|
|
31
|
+
* [[Actor|Actors]] are composed together into groupings called Scenes in
|
|
32
|
+
* Excalibur. The metaphor models the same idea behind real world
|
|
33
|
+
* actors in a scene. Only actors in scenes will be updated and drawn.
|
|
34
|
+
*
|
|
35
|
+
* Typical usages of a scene include: levels, menus, loading screens, etc.
|
|
36
|
+
*/
|
|
37
|
+
export class Scene extends Class {
|
|
38
|
+
constructor() {
|
|
39
|
+
super();
|
|
40
|
+
this._logger = Logger.getInstance();
|
|
41
|
+
/**
|
|
42
|
+
* Gets or sets the current camera for the scene
|
|
43
|
+
*/
|
|
44
|
+
this.camera = new Camera();
|
|
45
|
+
/**
|
|
46
|
+
* The ECS world for the scene
|
|
47
|
+
*/
|
|
48
|
+
this.world = new World(this);
|
|
49
|
+
this._isInitialized = false;
|
|
50
|
+
this._timers = [];
|
|
51
|
+
this._cancelQueue = [];
|
|
52
|
+
// Initialize systems
|
|
53
|
+
this.world.add(new ActionsSystem());
|
|
54
|
+
this.world.add(new MotionSystem());
|
|
55
|
+
this.world.add(new CollisionSystem());
|
|
56
|
+
this.world.add(new PointerSystem());
|
|
57
|
+
if (Flags.isEnabled(Legacy.LegacyDrawing)) {
|
|
58
|
+
this.world.add(new CanvasDrawingSystem());
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
this.world.add(new GraphicsSystem());
|
|
62
|
+
}
|
|
63
|
+
this.world.add(new DebugSystem());
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* The actors in the current scene
|
|
67
|
+
*/
|
|
68
|
+
get actors() {
|
|
69
|
+
return this.world.entityManager.entities.filter((e) => {
|
|
70
|
+
return e instanceof Actor;
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* The entities in the current scene
|
|
75
|
+
*/
|
|
76
|
+
get entities() {
|
|
77
|
+
return this.world.entityManager.entities;
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* The triggers in the current scene
|
|
81
|
+
*/
|
|
82
|
+
get triggers() {
|
|
83
|
+
return this.world.entityManager.entities.filter((e) => {
|
|
84
|
+
return e instanceof Trigger;
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* The [[TileMap]]s in the scene, if any
|
|
89
|
+
*/
|
|
90
|
+
get tileMaps() {
|
|
91
|
+
return this.world.entityManager.entities.filter((e) => {
|
|
92
|
+
return e instanceof TileMap;
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* The [[ScreenElement]]s in a scene, if any; these are drawn last
|
|
97
|
+
* @deprecated Use [[Scene.actors]]
|
|
98
|
+
*/
|
|
99
|
+
get screenElements() {
|
|
100
|
+
return this.actors.filter((a) => a instanceof ScreenElement);
|
|
101
|
+
}
|
|
102
|
+
get timers() {
|
|
103
|
+
return this._timers;
|
|
104
|
+
}
|
|
105
|
+
on(eventName, handler) {
|
|
106
|
+
super.on(eventName, handler);
|
|
107
|
+
}
|
|
108
|
+
once(eventName, handler) {
|
|
109
|
+
super.once(eventName, handler);
|
|
110
|
+
}
|
|
111
|
+
off(eventName, handler) {
|
|
112
|
+
super.off(eventName, handler);
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* This is called before the first update of the [[Scene]]. Initializes scene members like the camera. This method is meant to be
|
|
116
|
+
* overridden. This is where initialization of child actors should take place.
|
|
117
|
+
*/
|
|
118
|
+
onInitialize(_engine) {
|
|
119
|
+
// will be overridden
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* This is called when the scene is made active and started. It is meant to be overridden,
|
|
123
|
+
* this is where you should setup any DOM UI or event handlers needed for the scene.
|
|
124
|
+
*/
|
|
125
|
+
onActivate(_oldScene, _newScene) {
|
|
126
|
+
// will be overridden
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* This is called when the scene is made transitioned away from and stopped. It is meant to be overridden,
|
|
130
|
+
* this is where you should cleanup any DOM UI or event handlers needed for the scene.
|
|
131
|
+
*/
|
|
132
|
+
onDeactivate(_oldScene, _newScene) {
|
|
133
|
+
// will be overridden
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Safe to override onPreUpdate lifecycle event handler. Synonymous with `.on('preupdate', (evt) =>{...})`
|
|
137
|
+
*
|
|
138
|
+
* `onPreUpdate` is called directly before a scene is updated.
|
|
139
|
+
*/
|
|
140
|
+
onPreUpdate(_engine, _delta) {
|
|
141
|
+
// will be overridden
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Safe to override onPostUpdate lifecycle event handler. Synonymous with `.on('preupdate', (evt) =>{...})`
|
|
145
|
+
*
|
|
146
|
+
* `onPostUpdate` is called directly after a scene is updated.
|
|
147
|
+
*/
|
|
148
|
+
onPostUpdate(_engine, _delta) {
|
|
149
|
+
// will be overridden
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Safe to override onPreDraw lifecycle event handler. Synonymous with `.on('preupdate', (evt) =>{...})`
|
|
153
|
+
*
|
|
154
|
+
* `onPreDraw` is called directly before a scene is drawn.
|
|
155
|
+
*
|
|
156
|
+
* @deprecated Signature will change in v0.26.0
|
|
157
|
+
*/
|
|
158
|
+
onPreDraw(_ctx, _delta) {
|
|
159
|
+
// will be overridden
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* Safe to override onPostDraw lifecycle event handler. Synonymous with `.on('preupdate', (evt) =>{...})`
|
|
163
|
+
*
|
|
164
|
+
* `onPostDraw` is called directly after a scene is drawn.
|
|
165
|
+
*
|
|
166
|
+
* @deprecated Signature will change in v0.26.0
|
|
167
|
+
*/
|
|
168
|
+
onPostDraw(_ctx, _delta) {
|
|
169
|
+
// will be overridden
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* Initializes actors in the scene
|
|
173
|
+
*/
|
|
174
|
+
_initializeChildren() {
|
|
175
|
+
for (const child of this.entities) {
|
|
176
|
+
child._initialize(this.engine);
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* Gets whether or not the [[Scene]] has been initialized
|
|
181
|
+
*/
|
|
182
|
+
get isInitialized() {
|
|
183
|
+
return this._isInitialized;
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* It is not recommended that internal excalibur methods be overridden, do so at your own risk.
|
|
187
|
+
*
|
|
188
|
+
* Initializes the scene before the first update, meant to be called by engine not by users of
|
|
189
|
+
* Excalibur
|
|
190
|
+
* @internal
|
|
191
|
+
*/
|
|
192
|
+
_initialize(engine) {
|
|
193
|
+
if (!this.isInitialized) {
|
|
194
|
+
this.engine = engine;
|
|
195
|
+
// Initialize camera first
|
|
196
|
+
this.camera._initialize(engine);
|
|
197
|
+
this.world.systemManager.initialize();
|
|
198
|
+
// This order is important! we want to be sure any custom init that add actors
|
|
199
|
+
// fire before the actor init
|
|
200
|
+
this.onInitialize.call(this, engine);
|
|
201
|
+
this._initializeChildren();
|
|
202
|
+
this._logger.debug('Scene.onInitialize', this, engine);
|
|
203
|
+
this.eventDispatcher.emit('initialize', new InitializeEvent(engine, this));
|
|
204
|
+
this._isInitialized = true;
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
/**
|
|
208
|
+
* It is not recommended that internal excalibur methods be overridden, do so at your own risk.
|
|
209
|
+
*
|
|
210
|
+
* Activates the scene with the base behavior, then calls the overridable `onActivate` implementation.
|
|
211
|
+
* @internal
|
|
212
|
+
*/
|
|
213
|
+
_activate(oldScene, newScene) {
|
|
214
|
+
this._logger.debug('Scene.onActivate', this);
|
|
215
|
+
this.onActivate(oldScene, newScene);
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* It is not recommended that internal excalibur methods be overridden, do so at your own risk.
|
|
219
|
+
*
|
|
220
|
+
* Deactivates the scene with the base behavior, then calls the overridable `onDeactivate` implementation.
|
|
221
|
+
* @internal
|
|
222
|
+
*/
|
|
223
|
+
_deactivate(oldScene, newScene) {
|
|
224
|
+
this._logger.debug('Scene.onDeactivate', this);
|
|
225
|
+
this.onDeactivate(oldScene, newScene);
|
|
226
|
+
}
|
|
227
|
+
/**
|
|
228
|
+
* It is not recommended that internal excalibur methods be overridden, do so at your own risk.
|
|
229
|
+
*
|
|
230
|
+
* Internal _preupdate handler for [[onPreUpdate]] lifecycle event
|
|
231
|
+
* @internal
|
|
232
|
+
*/
|
|
233
|
+
_preupdate(_engine, delta) {
|
|
234
|
+
this.emit('preupdate', new PreUpdateEvent(_engine, delta, this));
|
|
235
|
+
this.onPreUpdate(_engine, delta);
|
|
236
|
+
}
|
|
237
|
+
/**
|
|
238
|
+
* It is not recommended that internal excalibur methods be overridden, do so at your own risk.
|
|
239
|
+
*
|
|
240
|
+
* Internal _preupdate handler for [[onPostUpdate]] lifecycle event
|
|
241
|
+
* @internal
|
|
242
|
+
*/
|
|
243
|
+
_postupdate(_engine, delta) {
|
|
244
|
+
this.emit('postupdate', new PostUpdateEvent(_engine, delta, this));
|
|
245
|
+
this.onPostUpdate(_engine, delta);
|
|
246
|
+
}
|
|
247
|
+
/**
|
|
248
|
+
* It is not recommended that internal excalibur methods be overridden, do so at your own risk.
|
|
249
|
+
*
|
|
250
|
+
* Internal _predraw handler for [[onPreDraw]] lifecycle event
|
|
251
|
+
*
|
|
252
|
+
* @deprecated Signature will change in v0.26.0
|
|
253
|
+
* @internal
|
|
254
|
+
*/
|
|
255
|
+
_predraw(_ctx, _delta) {
|
|
256
|
+
this.emit('predraw', new PreDrawEvent(_ctx, _delta, this));
|
|
257
|
+
this.onPreDraw(_ctx, _delta);
|
|
258
|
+
}
|
|
259
|
+
/**
|
|
260
|
+
* It is not recommended that internal excalibur methods be overridden, do so at your own risk.
|
|
261
|
+
*
|
|
262
|
+
* Internal _postdraw handler for [[onPostDraw]] lifecycle event
|
|
263
|
+
*
|
|
264
|
+
* @deprecated Signature will change in v0.26.0
|
|
265
|
+
* @internal
|
|
266
|
+
*/
|
|
267
|
+
_postdraw(_ctx, _delta) {
|
|
268
|
+
this.emit('postdraw', new PostDrawEvent(_ctx, _delta, this));
|
|
269
|
+
this.onPostDraw(_ctx, _delta);
|
|
270
|
+
}
|
|
271
|
+
/**
|
|
272
|
+
* Updates all the actors and timers in the scene. Called by the [[Engine]].
|
|
273
|
+
* @param engine Reference to the current Engine
|
|
274
|
+
* @param delta The number of milliseconds since the last update
|
|
275
|
+
*/
|
|
276
|
+
update(engine, delta) {
|
|
277
|
+
this._preupdate(engine, delta);
|
|
278
|
+
// TODO differed entity removal for timers
|
|
279
|
+
let i, len;
|
|
280
|
+
// Remove timers in the cancel queue before updating them
|
|
281
|
+
for (i = 0, len = this._cancelQueue.length; i < len; i++) {
|
|
282
|
+
this.removeTimer(this._cancelQueue[i]);
|
|
283
|
+
}
|
|
284
|
+
this._cancelQueue.length = 0;
|
|
285
|
+
// Cycle through timers updating timers
|
|
286
|
+
for (const timer of this._timers) {
|
|
287
|
+
timer.update(delta);
|
|
288
|
+
}
|
|
289
|
+
this.world.update(SystemType.Update, delta);
|
|
290
|
+
// Camera last keeps renders smooth that are based on entity/actor
|
|
291
|
+
if (this.camera) {
|
|
292
|
+
this.camera.update(engine, delta);
|
|
293
|
+
}
|
|
294
|
+
this._collectActorStats(engine);
|
|
295
|
+
this._postupdate(engine, delta);
|
|
296
|
+
}
|
|
297
|
+
/**
|
|
298
|
+
* Draws all the actors in the Scene. Called by the [[Engine]].
|
|
299
|
+
*
|
|
300
|
+
* @deprecated Signature will change in v0.26.0
|
|
301
|
+
* @param ctx The current rendering context
|
|
302
|
+
* @param delta The number of milliseconds since the last draw
|
|
303
|
+
*/
|
|
304
|
+
draw(ctx, delta) {
|
|
305
|
+
var _a;
|
|
306
|
+
this._predraw(ctx, delta);
|
|
307
|
+
this.world.update(SystemType.Draw, delta);
|
|
308
|
+
if ((_a = this.engine) === null || _a === void 0 ? void 0 : _a.isDebug) {
|
|
309
|
+
this.debugDraw(ctx);
|
|
310
|
+
}
|
|
311
|
+
this._postdraw(ctx, delta);
|
|
312
|
+
}
|
|
313
|
+
/**
|
|
314
|
+
* Draws all the actors' debug information in the Scene. Called by the [[Engine]].
|
|
315
|
+
* @param ctx The current rendering context
|
|
316
|
+
* @deprecated Signature will change in v0.26.0
|
|
317
|
+
*/
|
|
318
|
+
/* istanbul ignore next */
|
|
319
|
+
debugDraw(ctx) {
|
|
320
|
+
this.emit('predebugdraw', new PreDebugDrawEvent(ctx, this));
|
|
321
|
+
// pass
|
|
322
|
+
this.emit('postdebugdraw', new PostDebugDrawEvent(ctx, this));
|
|
323
|
+
}
|
|
324
|
+
/**
|
|
325
|
+
* Checks whether an actor is contained in this scene or not
|
|
326
|
+
*/
|
|
327
|
+
contains(actor) {
|
|
328
|
+
return this.actors.indexOf(actor) > -1;
|
|
329
|
+
}
|
|
330
|
+
add(entity) {
|
|
331
|
+
this.emit('entityadded', { target: entity });
|
|
332
|
+
this.world.add(entity);
|
|
333
|
+
entity.scene = this;
|
|
334
|
+
if (entity instanceof Timer) {
|
|
335
|
+
if (!Util.contains(this._timers, entity)) {
|
|
336
|
+
this.addTimer(entity);
|
|
337
|
+
}
|
|
338
|
+
return;
|
|
339
|
+
}
|
|
340
|
+
}
|
|
341
|
+
remove(entity) {
|
|
342
|
+
if (entity instanceof Entity) {
|
|
343
|
+
this.emit('entityremoved', { target: entity });
|
|
344
|
+
this.world.remove(entity);
|
|
345
|
+
}
|
|
346
|
+
if (entity instanceof Timer) {
|
|
347
|
+
this.removeTimer(entity);
|
|
348
|
+
}
|
|
349
|
+
}
|
|
350
|
+
/**
|
|
351
|
+
* Adds (any) actor to act as a piece of UI, meaning it is always positioned
|
|
352
|
+
* in screen coordinates. UI actors do not participate in collisions.
|
|
353
|
+
* @todo Should this be `ScreenElement` only?
|
|
354
|
+
* @deprecated Use [[Scene.add]]
|
|
355
|
+
*/
|
|
356
|
+
addScreenElement(actor) {
|
|
357
|
+
this.add(actor);
|
|
358
|
+
}
|
|
359
|
+
/**
|
|
360
|
+
* Removes an actor as a piece of UI
|
|
361
|
+
* @deprecated Use [[Scene.remove]]
|
|
362
|
+
*/
|
|
363
|
+
removeScreenElement(actor) {
|
|
364
|
+
this.remove(actor);
|
|
365
|
+
}
|
|
366
|
+
/**
|
|
367
|
+
* Adds a [[TileMap]] to the scene, once this is done the TileMap will be drawn and updated.
|
|
368
|
+
* @deprecated Use [[Scene.add]]
|
|
369
|
+
*/
|
|
370
|
+
addTileMap(tileMap) {
|
|
371
|
+
this.world.add(tileMap);
|
|
372
|
+
}
|
|
373
|
+
/**
|
|
374
|
+
* Removes a [[TileMap]] from the scene, it will no longer be drawn or updated.
|
|
375
|
+
* @deprecated Use [[Scene.remove]]
|
|
376
|
+
*/
|
|
377
|
+
removeTileMap(tileMap) {
|
|
378
|
+
this.world.remove(tileMap);
|
|
379
|
+
}
|
|
380
|
+
/**
|
|
381
|
+
* Adds a [[Timer]] to the scene
|
|
382
|
+
* @param timer The timer to add
|
|
383
|
+
*/
|
|
384
|
+
addTimer(timer) {
|
|
385
|
+
this._timers.push(timer);
|
|
386
|
+
timer.scene = this;
|
|
387
|
+
return timer;
|
|
388
|
+
}
|
|
389
|
+
/**
|
|
390
|
+
* Removes a [[Timer]] from the scene.
|
|
391
|
+
* @warning Can be dangerous, use [[cancelTimer]] instead
|
|
392
|
+
* @param timer The timer to remove
|
|
393
|
+
*/
|
|
394
|
+
removeTimer(timer) {
|
|
395
|
+
const i = this._timers.indexOf(timer);
|
|
396
|
+
if (i !== -1) {
|
|
397
|
+
this._timers.splice(i, 1);
|
|
398
|
+
}
|
|
399
|
+
return timer;
|
|
400
|
+
}
|
|
401
|
+
/**
|
|
402
|
+
* Cancels a [[Timer]], removing it from the scene nicely
|
|
403
|
+
* @param timer The timer to cancel
|
|
404
|
+
*/
|
|
405
|
+
cancelTimer(timer) {
|
|
406
|
+
this._cancelQueue.push(timer);
|
|
407
|
+
return timer;
|
|
408
|
+
}
|
|
409
|
+
/**
|
|
410
|
+
* Tests whether a [[Timer]] is active in the scene
|
|
411
|
+
*/
|
|
412
|
+
isTimerActive(timer) {
|
|
413
|
+
return this._timers.indexOf(timer) > -1 && !timer.complete;
|
|
414
|
+
}
|
|
415
|
+
isCurrentScene() {
|
|
416
|
+
if (this.engine) {
|
|
417
|
+
return this.engine.currentScene === this;
|
|
418
|
+
}
|
|
419
|
+
return false;
|
|
420
|
+
}
|
|
421
|
+
_collectActorStats(engine) {
|
|
422
|
+
const screenElements = this.actors.filter((a) => a instanceof ScreenElement);
|
|
423
|
+
for (const _ui of screenElements) {
|
|
424
|
+
engine.stats.currFrame.actors.ui++;
|
|
425
|
+
}
|
|
426
|
+
for (const actor of this.actors) {
|
|
427
|
+
engine.stats.currFrame.actors.alive++;
|
|
428
|
+
for (const child of actor.children) {
|
|
429
|
+
if (ActorUtils.isScreenElement(child)) {
|
|
430
|
+
// TODO not true
|
|
431
|
+
engine.stats.currFrame.actors.ui++;
|
|
432
|
+
}
|
|
433
|
+
else {
|
|
434
|
+
engine.stats.currFrame.actors.alive++;
|
|
435
|
+
}
|
|
436
|
+
}
|
|
437
|
+
}
|
|
438
|
+
}
|
|
439
|
+
}
|
|
440
|
+
__decorate([
|
|
441
|
+
obsolete({
|
|
442
|
+
message: 'Will be removed in excalibur v0.26.0',
|
|
443
|
+
alternateMethod: 'ScreenElements now are normal actors with a Transform Coordinate Plane of Screen'
|
|
444
|
+
})
|
|
445
|
+
], Scene.prototype, "screenElements", null);
|
|
446
|
+
__decorate([
|
|
447
|
+
obsolete({ message: 'Will be removed in excalibur v0.26.0', alternateMethod: 'Use Scene.add' })
|
|
448
|
+
], Scene.prototype, "addScreenElement", null);
|
|
449
|
+
__decorate([
|
|
450
|
+
obsolete({ message: 'Will be removed in excalibur v0.26.0', alternateMethod: 'Use Scene.remove' })
|
|
451
|
+
], Scene.prototype, "removeScreenElement", null);
|
|
452
|
+
__decorate([
|
|
453
|
+
obsolete({ message: 'Will be removed in excalibur v0.26.0', alternateMethod: 'Use Scene.add' })
|
|
454
|
+
], Scene.prototype, "addTileMap", null);
|
|
455
|
+
__decorate([
|
|
456
|
+
obsolete({ message: 'Will be removed in excalibur v0.26.0', alternateMethod: 'Use Scene.remove' })
|
|
457
|
+
], Scene.prototype, "removeTileMap", null);
|
|
458
|
+
//# sourceMappingURL=Scene.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Scene.js","sourceRoot":"","sources":["../../src/engine/Scene.ts"],"names":[],"mappings":"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"}
|