excalibur 0.28.3 → 0.28.4
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/.gitattributes +63 -63
- package/CHANGELOG.md +2003 -1955
- package/LICENSE.md +25 -25
- package/README.md +134 -134
- package/STYLEGUIDE.md +136 -136
- package/build/dist/Actions/Action/ActionSequence.js +31 -0
- package/build/dist/Actions/Action/ActionSequence.js.map +1 -0
- package/build/dist/Actions/Action/Blink.js +54 -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 +26 -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/EaseBy.js +70 -0
- package/build/dist/Actions/Action/EaseBy.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 +48 -0
- package/build/dist/Actions/Action/Fade.js.map +1 -0
- package/build/dist/Actions/Action/Follow.js +56 -0
- package/build/dist/Actions/Action/Follow.js.map +1 -0
- package/build/dist/Actions/Action/Meet.js +54 -0
- package/build/dist/Actions/Action/Meet.js.map +1 -0
- package/build/dist/Actions/Action/MoveBy.js +48 -0
- package/build/dist/Actions/Action/MoveBy.js.map +1 -0
- package/build/dist/Actions/Action/MoveTo.js +41 -0
- package/build/dist/Actions/Action/MoveTo.js.map +1 -0
- package/build/dist/Actions/Action/ParallelActions.js +23 -0
- package/build/dist/Actions/Action/ParallelActions.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 +95 -0
- package/build/dist/Actions/Action/RotateBy.js.map +1 -0
- package/build/dist/Actions/Action/RotateTo.js +91 -0
- package/build/dist/Actions/Action/RotateTo.js.map +1 -0
- package/build/dist/Actions/Action/ScaleBy.js +46 -0
- package/build/dist/Actions/Action/ScaleBy.js.map +1 -0
- package/build/dist/Actions/Action/ScaleTo.js +58 -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 +322 -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 +195 -0
- package/build/dist/Actions/ActionsComponent.js.map +1 -0
- package/build/dist/Actions/ActionsSystem.js +30 -0
- package/build/dist/Actions/ActionsSystem.js.map +1 -0
- package/build/dist/Actions/Index.js +26 -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 +629 -0
- package/build/dist/Actor.js.map +1 -0
- package/build/dist/Camera.js +660 -0
- package/build/dist/Camera.js.map +1 -0
- package/build/dist/Collision/BoundingBox.js +415 -0
- package/build/dist/Collision/BoundingBox.js.map +1 -0
- package/build/dist/Collision/ColliderComponent.js +202 -0
- package/build/dist/Collision/ColliderComponent.js.map +1 -0
- package/build/dist/Collision/Colliders/CircleCollider.js +226 -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 +32 -0
- package/build/dist/Collision/Colliders/Collider.js.map +1 -0
- package/build/dist/Collision/Colliders/CollisionJumpTable.js +300 -0
- package/build/dist/Collision/Colliders/CollisionJumpTable.js.map +1 -0
- package/build/dist/Collision/Colliders/EdgeCollider.js +229 -0
- package/build/dist/Collision/Colliders/EdgeCollider.js.map +1 -0
- package/build/dist/Collision/Colliders/PolygonCollider.js +556 -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 +99 -0
- package/build/dist/Collision/Colliders/Shape.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 +51 -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/Pair.js +92 -0
- package/build/dist/Collision/Detection/Pair.js.map +1 -0
- package/build/dist/Collision/Detection/QuadTree.js +193 -0
- package/build/dist/Collision/Detection/QuadTree.js.map +1 -0
- package/build/dist/Collision/Group/CollisionGroup.js +3 -3
- package/build/dist/Collision/Integrator.js +25 -0
- package/build/dist/Collision/Integrator.js.map +1 -0
- package/build/dist/Collision/MotionSystem.js +35 -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/PhysicsWorld.js +10 -0
- package/build/dist/Collision/PhysicsWorld.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 +154 -0
- package/build/dist/Collision/Solver/ArcadeSolver.js.map +1 -0
- package/build/dist/Collision/Solver/ContactConstraintPoint.js +87 -0
- package/build/dist/Collision/Solver/ContactConstraintPoint.js.map +1 -0
- package/build/dist/Collision/Solver/RealisticSolver.js +293 -0
- package/build/dist/Collision/Solver/RealisticSolver.js.map +1 -0
- package/build/dist/Collision/Solver/Solver.js +2 -0
- package/build/dist/Collision/Solver/Solver.js.map +1 -0
- package/build/dist/Color.js +417 -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.d.ts +11 -0
- package/build/dist/Debug/Debug.js +385 -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 +263 -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/Engine.js +986 -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 +107 -0
- package/build/dist/EntityComponentSystem/Components/TransformComponent.js.map +1 -0
- package/build/dist/EntityComponentSystem/Entity.js +487 -0
- package/build/dist/EntityComponentSystem/Entity.js.map +1 -0
- package/build/dist/EntityComponentSystem/EntityManager.js +137 -0
- package/build/dist/EntityComponentSystem/EntityManager.js.map +1 -0
- package/build/dist/EntityComponentSystem/Query.js +90 -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 +104 -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 +122 -0
- package/build/dist/EventDispatcher.js.map +1 -0
- package/build/dist/EventEmitter.js +86 -0
- package/build/dist/EventEmitter.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 +473 -0
- package/build/dist/Events.js.map +1 -0
- package/build/dist/Flags.js +67 -0
- package/build/dist/Flags.js.map +1 -0
- package/build/dist/Graphics/Animation.js +344 -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 +48 -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 +237 -0
- package/build/dist/Graphics/Context/ExcaliburGraphicsContext2DCanvas.js.map +1 -0
- package/build/dist/Graphics/Context/ExcaliburGraphicsContextWebGL.d.ts +1 -0
- package/build/dist/Graphics/Context/ExcaliburGraphicsContextWebGL.js +481 -0
- package/build/dist/Graphics/Context/ExcaliburGraphicsContextWebGL.js.map +1 -0
- package/build/dist/Graphics/Context/circle-renderer/circle-renderer.frag.glsl +52 -52
- package/build/dist/Graphics/Context/circle-renderer/circle-renderer.js +174 -0
- package/build/dist/Graphics/Context/circle-renderer/circle-renderer.js.map +1 -0
- package/build/dist/Graphics/Context/circle-renderer/circle-renderer.vert.glsl +37 -37
- 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/draw-call.js +16 -0
- package/build/dist/Graphics/Context/draw-call.js.map +1 -0
- package/build/dist/Graphics/Context/image-renderer/image-renderer.frag.glsl +32 -32
- package/build/dist/Graphics/Context/image-renderer/image-renderer.js +246 -0
- package/build/dist/Graphics/Context/image-renderer/image-renderer.js.map +1 -0
- package/build/dist/Graphics/Context/image-renderer/image-renderer.vert.glsl +32 -32
- package/build/dist/Graphics/Context/line-renderer/line-fragment.glsl +10 -10
- package/build/dist/Graphics/Context/line-renderer/line-renderer.js +90 -0
- package/build/dist/Graphics/Context/line-renderer/line-renderer.js.map +1 -0
- package/build/dist/Graphics/Context/line-renderer/line-vertex.glsl +14 -14
- package/build/dist/Graphics/Context/material-renderer/material-renderer.js +23 -2
- package/build/dist/Graphics/Context/material-renderer/material-renderer.js.map +1 -1
- package/build/dist/Graphics/Context/material.d.ts +2 -0
- package/build/dist/Graphics/Context/material.js +72 -0
- package/build/dist/Graphics/Context/material.js.map +1 -0
- package/build/dist/Graphics/Context/point-renderer/point-fragment.glsl +19 -19
- package/build/dist/Graphics/Context/point-renderer/point-renderer.js +91 -0
- package/build/dist/Graphics/Context/point-renderer/point-renderer.js.map +1 -0
- package/build/dist/Graphics/Context/point-renderer/point-vertex.glsl +11 -11
- package/build/dist/Graphics/Context/quad-index-buffer.js +67 -0
- package/build/dist/Graphics/Context/quad-index-buffer.js.map +1 -0
- package/build/dist/Graphics/Context/rectangle-renderer/rectangle-renderer.frag.glsl +85 -85
- package/build/dist/Graphics/Context/rectangle-renderer/rectangle-renderer.js +305 -0
- package/build/dist/Graphics/Context/rectangle-renderer/rectangle-renderer.js.map +1 -0
- package/build/dist/Graphics/Context/rectangle-renderer/rectangle-renderer.vert.glsl +42 -42
- 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-fragment.glsl +13 -13
- package/build/dist/Graphics/Context/screen-pass-painter/screen-pass-painter.js +56 -0
- package/build/dist/Graphics/Context/screen-pass-painter/screen-pass-painter.js.map +1 -0
- package/build/dist/Graphics/Context/screen-pass-painter/screen-vertex.glsl +11 -11
- package/build/dist/Graphics/Context/state-stack.js +37 -0
- package/build/dist/Graphics/Context/state-stack.js.map +1 -0
- package/build/dist/Graphics/Context/texture-loader.js +109 -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 +53 -0
- package/build/dist/Graphics/Context/vertex-buffer.js.map +1 -0
- package/build/dist/Graphics/Context/webgl-util.js +79 -0
- package/build/dist/Graphics/Context/webgl-util.js.map +1 -0
- package/build/dist/Graphics/DebugGraphicsComponent.d.ts +3 -2
- package/build/dist/Graphics/DebugGraphicsComponent.js +16 -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 +148 -0
- package/build/dist/Graphics/Font.js.map +1 -0
- package/build/dist/Graphics/FontCache.d.ts +1 -0
- package/build/dist/Graphics/FontCache.js +80 -0
- package/build/dist/Graphics/FontCache.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/FontTextInstance.js +230 -0
- package/build/dist/Graphics/FontTextInstance.js.map +1 -0
- package/build/dist/Graphics/Graphic.js +208 -0
- package/build/dist/Graphics/Graphic.js.map +1 -0
- package/build/dist/Graphics/GraphicsComponent.js +336 -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 +210 -0
- package/build/dist/Graphics/GraphicsSystem.js.map +1 -0
- package/build/dist/Graphics/ImageSource.js +124 -0
- package/build/dist/Graphics/ImageSource.js.map +1 -0
- package/build/dist/Graphics/Line.js +45 -0
- package/build/dist/Graphics/Line.js.map +1 -0
- package/build/dist/Graphics/OffscreenSystem.js +64 -0
- package/build/dist/Graphics/OffscreenSystem.js.map +1 -0
- package/build/dist/Graphics/ParallaxComponent.js +11 -0
- package/build/dist/Graphics/ParallaxComponent.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 +59 -0
- package/build/dist/Graphics/PostProcessor/ScreenShader.js.map +1 -0
- package/build/dist/Graphics/PostProcessor/color-blind-fragment.glsl +64 -64
- package/build/dist/Graphics/Raster.js +215 -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 +82 -0
- package/build/dist/Graphics/Sprite.js.map +1 -0
- package/build/dist/Graphics/SpriteFont.js +139 -0
- package/build/dist/Graphics/SpriteFont.js.map +1 -0
- package/build/dist/Graphics/SpriteSheet.js +116 -0
- package/build/dist/Graphics/SpriteSheet.js.map +1 -0
- package/build/dist/Graphics/Text.js +103 -0
- package/build/dist/Graphics/Text.js.map +1 -0
- package/build/dist/Graphics/index.js +46 -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 +422 -0
- package/build/dist/Input/Gamepad.js.map +1 -0
- package/build/dist/Input/Index.js +88 -0
- package/build/dist/Input/Index.js.map +1 -0
- package/build/dist/Input/InputMapper.js +45 -0
- package/build/dist/Input/InputMapper.js.map +1 -0
- package/build/dist/Input/Keyboard.js +348 -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 +44 -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 +456 -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 +249 -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/Evented.js +2 -0
- package/build/dist/Interfaces/Evented.js.map +1 -0
- package/build/dist/Interfaces/Index.js +8 -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/Label.js +81 -0
- package/build/dist/Label.js.map +1 -0
- package/build/dist/Loader.js +416 -0
- package/build/dist/Loader.js.map +1 -0
- package/build/dist/Math/Index.js +13 -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/affine-matrix.js +331 -0
- package/build/dist/Math/affine-matrix.js.map +1 -0
- package/build/dist/Math/coord-plane.js +17 -0
- package/build/dist/Math/coord-plane.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-segment.js +205 -0
- package/build/dist/Math/line-segment.js.map +1 -0
- package/build/dist/Math/matrix.js +457 -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/transform.js +219 -0
- package/build/dist/Math/transform.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 +340 -0
- package/build/dist/Math/vector.js.map +1 -0
- package/build/dist/Math/watch-vector.js +26 -0
- package/build/dist/Math/watch-vector.js.map +1 -0
- package/build/dist/Particles.js +430 -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/Resources/Gif.js +464 -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 +81 -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 +326 -0
- package/build/dist/Resources/Sound/Sound.js.map +1 -0
- package/build/dist/Resources/Sound/WebAudioInstance.js +190 -0
- package/build/dist/Resources/Sound/WebAudioInstance.js.map +1 -0
- package/build/dist/Scene.js +444 -0
- package/build/dist/Scene.js.map +1 -0
- package/build/dist/Screen.js +782 -0
- package/build/dist/Screen.js.map +1 -0
- package/build/dist/ScreenElement.js +43 -0
- package/build/dist/ScreenElement.js.map +1 -0
- package/build/dist/TileMap/IsometricEntityComponent.js +17 -0
- package/build/dist/TileMap/IsometricEntityComponent.js.map +1 -0
- package/build/dist/TileMap/IsometricEntitySystem.js +23 -0
- package/build/dist/TileMap/IsometricEntitySystem.js.map +1 -0
- package/build/dist/TileMap/IsometricMap.js +311 -0
- package/build/dist/TileMap/IsometricMap.js.map +1 -0
- package/build/dist/TileMap/TileMap.d.ts +2 -1
- package/build/dist/TileMap/TileMap.js +630 -0
- package/build/dist/TileMap/TileMap.js.map +1 -0
- package/build/dist/TileMap/index.js +5 -0
- package/build/dist/TileMap/index.js.map +1 -0
- package/build/dist/Timer.js +202 -0
- package/build/dist/Timer.js.map +1 -0
- package/build/dist/Trigger.js +94 -0
- package/build/dist/Trigger.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/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 +115 -0
- package/build/dist/Util/DrawUtil.js.map +1 -0
- package/build/dist/Util/EasingFunctions.js +102 -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/Future.js +30 -0
- package/build/dist/Util/Future.js.map +1 -0
- package/build/dist/Util/IFrame.js +23 -0
- package/build/dist/Util/IFrame.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 +66 -0
- package/build/dist/Util/Observable.js.map +1 -0
- package/build/dist/Util/Pool.js +74 -0
- package/build/dist/Util/Pool.js.map +1 -0
- package/build/dist/Util/Semaphore.js +55 -0
- package/build/dist/Util/Semaphore.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/StateMachine.js +79 -0
- package/build/dist/Util/StateMachine.js.map +1 -0
- package/build/dist/Util/Toaster.css +28 -28
- package/build/dist/Util/Toaster.js +84 -0
- package/build/dist/Util/Toaster.js.map +1 -0
- package/build/dist/Util/Util.d.ts +6 -0
- package/build/dist/Util/Util.js +95 -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.d.ts +2 -2
- package/build/dist/excalibur.js +389 -258
- 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 +81 -0
- package/build/dist/index.js.map +1 -0
- package/build/esm/Debug/Debug.d.ts +11 -0
- package/build/esm/Graphics/Context/ExcaliburGraphicsContextWebGL.d.ts +1 -0
- package/build/esm/Graphics/Context/material.d.ts +2 -0
- package/build/esm/Graphics/DebugGraphicsComponent.d.ts +3 -2
- package/build/esm/Graphics/FontCache.d.ts +1 -0
- package/build/esm/TileMap/TileMap.d.ts +2 -1
- package/build/esm/Util/Util.d.ts +6 -0
- package/build/esm/excalibur.d.ts +2 -2
- package/build/esm/excalibur.js +389 -258
- 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/docker-compose.yml +11 -11
- package/package.json +131 -131
- package/build/dist/Loader.css +0 -122
- package/build/nuget/Excalibur.0.28.3.nupkg +0 -0
- package/build/v0.28.3.zip +0 -0
- package/excalibur-0.28.3.tgz +0 -0
|
@@ -0,0 +1,473 @@
|
|
|
1
|
+
export var EventTypes;
|
|
2
|
+
(function (EventTypes) {
|
|
3
|
+
EventTypes["Kill"] = "kill";
|
|
4
|
+
EventTypes["PreKill"] = "prekill";
|
|
5
|
+
EventTypes["PostKill"] = "postkill";
|
|
6
|
+
EventTypes["PreDraw"] = "predraw";
|
|
7
|
+
EventTypes["PostDraw"] = "postdraw";
|
|
8
|
+
EventTypes["PreDebugDraw"] = "predebugdraw";
|
|
9
|
+
EventTypes["PostDebugDraw"] = "postdebugdraw";
|
|
10
|
+
EventTypes["PreUpdate"] = "preupdate";
|
|
11
|
+
EventTypes["PostUpdate"] = "postupdate";
|
|
12
|
+
EventTypes["PreFrame"] = "preframe";
|
|
13
|
+
EventTypes["PostFrame"] = "postframe";
|
|
14
|
+
EventTypes["PreCollision"] = "precollision";
|
|
15
|
+
EventTypes["CollisionStart"] = "collisionstart";
|
|
16
|
+
EventTypes["CollisionEnd"] = "collisionend";
|
|
17
|
+
EventTypes["PostCollision"] = "postcollision";
|
|
18
|
+
EventTypes["Initialize"] = "initialize";
|
|
19
|
+
EventTypes["Activate"] = "activate";
|
|
20
|
+
EventTypes["Deactivate"] = "deactivate";
|
|
21
|
+
EventTypes["ExitViewport"] = "exitviewport";
|
|
22
|
+
EventTypes["EnterViewport"] = "enterviewport";
|
|
23
|
+
EventTypes["ExitTrigger"] = "exit";
|
|
24
|
+
EventTypes["EnterTrigger"] = "enter";
|
|
25
|
+
EventTypes["Connect"] = "connect";
|
|
26
|
+
EventTypes["Disconnect"] = "disconnect";
|
|
27
|
+
EventTypes["Button"] = "button";
|
|
28
|
+
EventTypes["Axis"] = "axis";
|
|
29
|
+
EventTypes["Visible"] = "visible";
|
|
30
|
+
EventTypes["Hidden"] = "hidden";
|
|
31
|
+
EventTypes["Start"] = "start";
|
|
32
|
+
EventTypes["Stop"] = "stop";
|
|
33
|
+
EventTypes["PointerUp"] = "pointerup";
|
|
34
|
+
EventTypes["PointerDown"] = "pointerdown";
|
|
35
|
+
EventTypes["PointerMove"] = "pointermove";
|
|
36
|
+
EventTypes["PointerEnter"] = "pointerenter";
|
|
37
|
+
EventTypes["PointerLeave"] = "pointerleave";
|
|
38
|
+
EventTypes["PointerCancel"] = "pointercancel";
|
|
39
|
+
EventTypes["PointerWheel"] = "pointerwheel";
|
|
40
|
+
EventTypes["Up"] = "up";
|
|
41
|
+
EventTypes["Down"] = "down";
|
|
42
|
+
EventTypes["Move"] = "move";
|
|
43
|
+
EventTypes["Enter"] = "enter";
|
|
44
|
+
EventTypes["Leave"] = "leave";
|
|
45
|
+
EventTypes["Cancel"] = "cancel";
|
|
46
|
+
EventTypes["Wheel"] = "wheel";
|
|
47
|
+
EventTypes["Press"] = "press";
|
|
48
|
+
EventTypes["Release"] = "release";
|
|
49
|
+
EventTypes["Hold"] = "hold";
|
|
50
|
+
EventTypes["PointerDragStart"] = "pointerdragstart";
|
|
51
|
+
EventTypes["PointerDragEnd"] = "pointerdragend";
|
|
52
|
+
EventTypes["PointerDragEnter"] = "pointerdragenter";
|
|
53
|
+
EventTypes["PointerDragLeave"] = "pointerdragleave";
|
|
54
|
+
EventTypes["PointerDragMove"] = "pointerdragmove";
|
|
55
|
+
})(EventTypes || (EventTypes = {}));
|
|
56
|
+
/**
|
|
57
|
+
* Base event type in Excalibur that all other event types derive from. Not all event types are thrown on all Excalibur game objects,
|
|
58
|
+
* some events are unique to a type, others are not.
|
|
59
|
+
*
|
|
60
|
+
*/
|
|
61
|
+
export class GameEvent {
|
|
62
|
+
constructor() {
|
|
63
|
+
this._bubbles = true;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* If set to false, prevents event from propagating to other actors. If true it will be propagated
|
|
67
|
+
* to all actors that apply.
|
|
68
|
+
*/
|
|
69
|
+
get bubbles() {
|
|
70
|
+
return this._bubbles;
|
|
71
|
+
}
|
|
72
|
+
set bubbles(value) {
|
|
73
|
+
this._bubbles = value;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Prevents event from bubbling
|
|
77
|
+
*/
|
|
78
|
+
stopPropagation() {
|
|
79
|
+
this.bubbles = false;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* The 'kill' event is emitted on actors when it is killed. The target is the actor that was killed.
|
|
84
|
+
*/
|
|
85
|
+
export class KillEvent extends GameEvent {
|
|
86
|
+
constructor(target) {
|
|
87
|
+
super();
|
|
88
|
+
this.target = target;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* The 'prekill' event is emitted directly before an actor is killed.
|
|
93
|
+
*/
|
|
94
|
+
export class PreKillEvent extends GameEvent {
|
|
95
|
+
constructor(target) {
|
|
96
|
+
super();
|
|
97
|
+
this.target = target;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* The 'postkill' event is emitted directly after the actor is killed.
|
|
102
|
+
*/
|
|
103
|
+
export class PostKillEvent extends GameEvent {
|
|
104
|
+
constructor(target) {
|
|
105
|
+
super();
|
|
106
|
+
this.target = target;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* The 'start' event is emitted on engine when has started and is ready for interaction.
|
|
111
|
+
*/
|
|
112
|
+
export class GameStartEvent extends GameEvent {
|
|
113
|
+
constructor(target) {
|
|
114
|
+
super();
|
|
115
|
+
this.target = target;
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* The 'stop' event is emitted on engine when has been stopped and will no longer take input, update or draw.
|
|
120
|
+
*/
|
|
121
|
+
export class GameStopEvent extends GameEvent {
|
|
122
|
+
constructor(target) {
|
|
123
|
+
super();
|
|
124
|
+
this.target = target;
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* The 'predraw' event is emitted on actors, scenes, and engine before drawing starts. Actors' predraw happens inside their graphics
|
|
129
|
+
* transform so that all drawing takes place with the actor as the origin.
|
|
130
|
+
*
|
|
131
|
+
*/
|
|
132
|
+
export class PreDrawEvent extends GameEvent {
|
|
133
|
+
constructor(ctx, delta, target) {
|
|
134
|
+
super();
|
|
135
|
+
this.ctx = ctx;
|
|
136
|
+
this.delta = delta;
|
|
137
|
+
this.target = target;
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* The 'postdraw' event is emitted on actors, scenes, and engine after drawing finishes. Actors' postdraw happens inside their graphics
|
|
142
|
+
* transform so that all drawing takes place with the actor as the origin.
|
|
143
|
+
*
|
|
144
|
+
*/
|
|
145
|
+
export class PostDrawEvent extends GameEvent {
|
|
146
|
+
constructor(ctx, delta, target) {
|
|
147
|
+
super();
|
|
148
|
+
this.ctx = ctx;
|
|
149
|
+
this.delta = delta;
|
|
150
|
+
this.target = target;
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* The 'predebugdraw' event is emitted on actors, scenes, and engine before debug drawing starts.
|
|
155
|
+
*/
|
|
156
|
+
export class PreDebugDrawEvent extends GameEvent {
|
|
157
|
+
constructor(ctx, target) {
|
|
158
|
+
super();
|
|
159
|
+
this.ctx = ctx;
|
|
160
|
+
this.target = target;
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* The 'postdebugdraw' event is emitted on actors, scenes, and engine after debug drawing starts.
|
|
165
|
+
*/
|
|
166
|
+
export class PostDebugDrawEvent extends GameEvent {
|
|
167
|
+
constructor(ctx, target) {
|
|
168
|
+
super();
|
|
169
|
+
this.ctx = ctx;
|
|
170
|
+
this.target = target;
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
/**
|
|
174
|
+
* The 'preupdate' event is emitted on actors, scenes, camera, and engine before the update starts.
|
|
175
|
+
*/
|
|
176
|
+
export class PreUpdateEvent extends GameEvent {
|
|
177
|
+
constructor(engine, delta, target) {
|
|
178
|
+
super();
|
|
179
|
+
this.engine = engine;
|
|
180
|
+
this.delta = delta;
|
|
181
|
+
this.target = target;
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
/**
|
|
185
|
+
* The 'postupdate' event is emitted on actors, scenes, camera, and engine after the update ends.
|
|
186
|
+
*/
|
|
187
|
+
export class PostUpdateEvent extends GameEvent {
|
|
188
|
+
constructor(engine, delta, target) {
|
|
189
|
+
super();
|
|
190
|
+
this.engine = engine;
|
|
191
|
+
this.delta = delta;
|
|
192
|
+
this.target = target;
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
/**
|
|
196
|
+
* The 'preframe' event is emitted on the engine, before the frame begins.
|
|
197
|
+
*/
|
|
198
|
+
export class PreFrameEvent extends GameEvent {
|
|
199
|
+
constructor(engine, prevStats) {
|
|
200
|
+
super();
|
|
201
|
+
this.engine = engine;
|
|
202
|
+
this.prevStats = prevStats;
|
|
203
|
+
this.target = engine;
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
/**
|
|
207
|
+
* The 'postframe' event is emitted on the engine, after a frame ends.
|
|
208
|
+
*/
|
|
209
|
+
export class PostFrameEvent extends GameEvent {
|
|
210
|
+
constructor(engine, stats) {
|
|
211
|
+
super();
|
|
212
|
+
this.engine = engine;
|
|
213
|
+
this.stats = stats;
|
|
214
|
+
this.target = engine;
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* Event received when a gamepad is connected to Excalibur. [[Gamepads]] receives this event.
|
|
219
|
+
*/
|
|
220
|
+
export class GamepadConnectEvent extends GameEvent {
|
|
221
|
+
constructor(index, gamepad) {
|
|
222
|
+
super();
|
|
223
|
+
this.index = index;
|
|
224
|
+
this.gamepad = gamepad;
|
|
225
|
+
this.target = gamepad;
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
/**
|
|
229
|
+
* Event received when a gamepad is disconnected from Excalibur. [[Gamepads]] receives this event.
|
|
230
|
+
*/
|
|
231
|
+
export class GamepadDisconnectEvent extends GameEvent {
|
|
232
|
+
constructor(index, gamepad) {
|
|
233
|
+
super();
|
|
234
|
+
this.index = index;
|
|
235
|
+
this.gamepad = gamepad;
|
|
236
|
+
this.target = gamepad;
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
/**
|
|
240
|
+
* Gamepad button event. See [[Gamepads]] for information on responding to controller input. [[Gamepad]] instances receive this event;
|
|
241
|
+
*/
|
|
242
|
+
export class GamepadButtonEvent extends GameEvent {
|
|
243
|
+
/**
|
|
244
|
+
* @param button The Gamepad button
|
|
245
|
+
* @param value A numeric value between 0 and 1
|
|
246
|
+
*/
|
|
247
|
+
constructor(button, value, target) {
|
|
248
|
+
super();
|
|
249
|
+
this.button = button;
|
|
250
|
+
this.value = value;
|
|
251
|
+
this.target = target;
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
/**
|
|
255
|
+
* Gamepad axis event. See [[Gamepads]] for information on responding to controller input. [[Gamepad]] instances receive this event;
|
|
256
|
+
*/
|
|
257
|
+
export class GamepadAxisEvent extends GameEvent {
|
|
258
|
+
/**
|
|
259
|
+
* @param axis The Gamepad axis
|
|
260
|
+
* @param value A numeric value between -1 and 1
|
|
261
|
+
*/
|
|
262
|
+
constructor(axis, value, target) {
|
|
263
|
+
super();
|
|
264
|
+
this.axis = axis;
|
|
265
|
+
this.value = value;
|
|
266
|
+
this.target = target;
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
/**
|
|
270
|
+
* Event received by the [[Engine]] when the browser window is visible on a screen.
|
|
271
|
+
*/
|
|
272
|
+
export class VisibleEvent extends GameEvent {
|
|
273
|
+
constructor(target) {
|
|
274
|
+
super();
|
|
275
|
+
this.target = target;
|
|
276
|
+
}
|
|
277
|
+
}
|
|
278
|
+
/**
|
|
279
|
+
* Event received by the [[Engine]] when the browser window is hidden from all screens.
|
|
280
|
+
*/
|
|
281
|
+
export class HiddenEvent extends GameEvent {
|
|
282
|
+
constructor(target) {
|
|
283
|
+
super();
|
|
284
|
+
this.target = target;
|
|
285
|
+
}
|
|
286
|
+
}
|
|
287
|
+
/**
|
|
288
|
+
* Event thrown on an [[Actor|actor]] when a collision will occur this frame if it resolves
|
|
289
|
+
*/
|
|
290
|
+
export class PreCollisionEvent extends GameEvent {
|
|
291
|
+
/**
|
|
292
|
+
* @param actor The actor the event was thrown on
|
|
293
|
+
* @param other The actor that will collided with the current actor
|
|
294
|
+
* @param side The side that will be collided with the current actor
|
|
295
|
+
* @param intersection Intersection vector
|
|
296
|
+
*/
|
|
297
|
+
constructor(actor, other, side, intersection) {
|
|
298
|
+
super();
|
|
299
|
+
this.other = other;
|
|
300
|
+
this.side = side;
|
|
301
|
+
this.intersection = intersection;
|
|
302
|
+
this.target = actor;
|
|
303
|
+
}
|
|
304
|
+
}
|
|
305
|
+
/**
|
|
306
|
+
* Event thrown on an [[Actor|actor]] when a collision has been resolved (body reacted) this frame
|
|
307
|
+
*/
|
|
308
|
+
export class PostCollisionEvent extends GameEvent {
|
|
309
|
+
/**
|
|
310
|
+
* @param actor The actor the event was thrown on
|
|
311
|
+
* @param other The actor that did collide with the current actor
|
|
312
|
+
* @param side The side that did collide with the current actor
|
|
313
|
+
* @param intersection Intersection vector
|
|
314
|
+
*/
|
|
315
|
+
constructor(actor, other, side, intersection) {
|
|
316
|
+
super();
|
|
317
|
+
this.other = other;
|
|
318
|
+
this.side = side;
|
|
319
|
+
this.intersection = intersection;
|
|
320
|
+
this.target = actor;
|
|
321
|
+
}
|
|
322
|
+
get actor() {
|
|
323
|
+
return this.target;
|
|
324
|
+
}
|
|
325
|
+
set actor(actor) {
|
|
326
|
+
this.target = actor;
|
|
327
|
+
}
|
|
328
|
+
}
|
|
329
|
+
export class ContactStartEvent {
|
|
330
|
+
constructor(target, other, contact) {
|
|
331
|
+
this.target = target;
|
|
332
|
+
this.other = other;
|
|
333
|
+
this.contact = contact;
|
|
334
|
+
}
|
|
335
|
+
}
|
|
336
|
+
export class ContactEndEvent {
|
|
337
|
+
constructor(target, other) {
|
|
338
|
+
this.target = target;
|
|
339
|
+
this.other = other;
|
|
340
|
+
}
|
|
341
|
+
}
|
|
342
|
+
export class CollisionPreSolveEvent {
|
|
343
|
+
constructor(target, other, side, intersection, contact) {
|
|
344
|
+
this.target = target;
|
|
345
|
+
this.other = other;
|
|
346
|
+
this.side = side;
|
|
347
|
+
this.intersection = intersection;
|
|
348
|
+
this.contact = contact;
|
|
349
|
+
}
|
|
350
|
+
}
|
|
351
|
+
export class CollisionPostSolveEvent {
|
|
352
|
+
constructor(target, other, side, intersection, contact) {
|
|
353
|
+
this.target = target;
|
|
354
|
+
this.other = other;
|
|
355
|
+
this.side = side;
|
|
356
|
+
this.intersection = intersection;
|
|
357
|
+
this.contact = contact;
|
|
358
|
+
}
|
|
359
|
+
}
|
|
360
|
+
/**
|
|
361
|
+
* Event thrown the first time an [[Actor|actor]] collides with another, after an actor is in contact normal collision events are fired.
|
|
362
|
+
*/
|
|
363
|
+
export class CollisionStartEvent extends GameEvent {
|
|
364
|
+
/**
|
|
365
|
+
*
|
|
366
|
+
* @param actor
|
|
367
|
+
* @param other
|
|
368
|
+
* @param contact
|
|
369
|
+
*/
|
|
370
|
+
constructor(actor, other, contact) {
|
|
371
|
+
super();
|
|
372
|
+
this.other = other;
|
|
373
|
+
this.contact = contact;
|
|
374
|
+
this.target = actor;
|
|
375
|
+
}
|
|
376
|
+
get actor() {
|
|
377
|
+
return this.target;
|
|
378
|
+
}
|
|
379
|
+
set actor(actor) {
|
|
380
|
+
this.target = actor;
|
|
381
|
+
}
|
|
382
|
+
}
|
|
383
|
+
/**
|
|
384
|
+
* Event thrown when the [[Actor|actor]] is no longer colliding with another
|
|
385
|
+
*/
|
|
386
|
+
export class CollisionEndEvent extends GameEvent {
|
|
387
|
+
/**
|
|
388
|
+
*
|
|
389
|
+
*/
|
|
390
|
+
constructor(actor, other) {
|
|
391
|
+
super();
|
|
392
|
+
this.other = other;
|
|
393
|
+
this.target = actor;
|
|
394
|
+
}
|
|
395
|
+
get actor() {
|
|
396
|
+
return this.target;
|
|
397
|
+
}
|
|
398
|
+
set actor(actor) {
|
|
399
|
+
this.target = actor;
|
|
400
|
+
}
|
|
401
|
+
}
|
|
402
|
+
/**
|
|
403
|
+
* Event thrown on an [[Actor]], [[Scene]], and [[Engine]] only once before the first update call
|
|
404
|
+
*/
|
|
405
|
+
export class InitializeEvent extends GameEvent {
|
|
406
|
+
/**
|
|
407
|
+
* @param engine The reference to the current engine
|
|
408
|
+
*/
|
|
409
|
+
constructor(engine, target) {
|
|
410
|
+
super();
|
|
411
|
+
this.engine = engine;
|
|
412
|
+
this.target = target;
|
|
413
|
+
}
|
|
414
|
+
}
|
|
415
|
+
/**
|
|
416
|
+
* Event thrown on a [[Scene]] on activation
|
|
417
|
+
*/
|
|
418
|
+
export class ActivateEvent extends GameEvent {
|
|
419
|
+
/**
|
|
420
|
+
* @param context The context for the scene activation
|
|
421
|
+
*/
|
|
422
|
+
constructor(context, target) {
|
|
423
|
+
super();
|
|
424
|
+
this.context = context;
|
|
425
|
+
this.target = target;
|
|
426
|
+
}
|
|
427
|
+
}
|
|
428
|
+
/**
|
|
429
|
+
* Event thrown on a [[Scene]] on deactivation
|
|
430
|
+
*/
|
|
431
|
+
export class DeactivateEvent extends GameEvent {
|
|
432
|
+
/**
|
|
433
|
+
* @param context The context for the scene deactivation
|
|
434
|
+
*/
|
|
435
|
+
constructor(context, target) {
|
|
436
|
+
super();
|
|
437
|
+
this.context = context;
|
|
438
|
+
this.target = target;
|
|
439
|
+
}
|
|
440
|
+
}
|
|
441
|
+
/**
|
|
442
|
+
* Event thrown on an [[Actor]] when it completely leaves the screen.
|
|
443
|
+
*/
|
|
444
|
+
export class ExitViewPortEvent extends GameEvent {
|
|
445
|
+
constructor(target) {
|
|
446
|
+
super();
|
|
447
|
+
this.target = target;
|
|
448
|
+
}
|
|
449
|
+
}
|
|
450
|
+
/**
|
|
451
|
+
* Event thrown on an [[Actor]] when it completely leaves the screen.
|
|
452
|
+
*/
|
|
453
|
+
export class EnterViewPortEvent extends GameEvent {
|
|
454
|
+
constructor(target) {
|
|
455
|
+
super();
|
|
456
|
+
this.target = target;
|
|
457
|
+
}
|
|
458
|
+
}
|
|
459
|
+
export class EnterTriggerEvent extends GameEvent {
|
|
460
|
+
constructor(target, actor) {
|
|
461
|
+
super();
|
|
462
|
+
this.target = target;
|
|
463
|
+
this.actor = actor;
|
|
464
|
+
}
|
|
465
|
+
}
|
|
466
|
+
export class ExitTriggerEvent extends GameEvent {
|
|
467
|
+
constructor(target, actor) {
|
|
468
|
+
super();
|
|
469
|
+
this.target = target;
|
|
470
|
+
this.actor = actor;
|
|
471
|
+
}
|
|
472
|
+
}
|
|
473
|
+
//# sourceMappingURL=Events.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Events.js","sourceRoot":"","sources":["../../src/engine/Events.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Flags is a feature flag implementation for Excalibur. They can only be operated **before [[Engine]] construction**
|
|
3
|
+
* after which they are frozen and are read-only.
|
|
4
|
+
*
|
|
5
|
+
* Flags are used to enable experimental or preview features in Excalibur.
|
|
6
|
+
*/
|
|
7
|
+
export class Flags {
|
|
8
|
+
/**
|
|
9
|
+
* Force excalibur to load the Canvas 2D graphics context fallback
|
|
10
|
+
* @warning not all features of excalibur are supported in the Canvas 2D fallback
|
|
11
|
+
*/
|
|
12
|
+
static useCanvasGraphicsContext() {
|
|
13
|
+
Flags.enable('use-canvas-context');
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Freeze all flag modifications making them readonly
|
|
17
|
+
*/
|
|
18
|
+
static freeze() {
|
|
19
|
+
Flags._FROZEN = true;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Resets internal flag state, not meant to be called by users. Only used for testing.
|
|
23
|
+
*
|
|
24
|
+
* Calling this in your game is UNSUPPORTED
|
|
25
|
+
* @internal
|
|
26
|
+
*/
|
|
27
|
+
static _reset() {
|
|
28
|
+
Flags._FROZEN = false;
|
|
29
|
+
Flags._FLAGS = {};
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Enable a specific feature flag by name. **Note: can only be set before [[Engine]] constructor time**
|
|
33
|
+
* @param flagName
|
|
34
|
+
*/
|
|
35
|
+
static enable(flagName) {
|
|
36
|
+
if (this._FROZEN) {
|
|
37
|
+
throw Error('Feature flags can only be enabled before Engine constructor time');
|
|
38
|
+
}
|
|
39
|
+
Flags._FLAGS[flagName] = true;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Disable a specific feature flag by name. **Note: can only be set before [[Engine]] constructor time**
|
|
43
|
+
* @param flagName
|
|
44
|
+
*/
|
|
45
|
+
static disable(flagName) {
|
|
46
|
+
if (this._FROZEN) {
|
|
47
|
+
throw Error('Feature flags can only be disabled before Engine constructor time');
|
|
48
|
+
}
|
|
49
|
+
Flags._FLAGS[flagName] = false;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Check if a flag is enabled. If the flag is disabled or does not exist `false` is returned
|
|
53
|
+
* @param flagName
|
|
54
|
+
*/
|
|
55
|
+
static isEnabled(flagName) {
|
|
56
|
+
return !!Flags._FLAGS[flagName];
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Show a list of currently known flags
|
|
60
|
+
*/
|
|
61
|
+
static show() {
|
|
62
|
+
return Object.keys(Flags._FLAGS);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
Flags._FROZEN = false;
|
|
66
|
+
Flags._FLAGS = {};
|
|
67
|
+
//# sourceMappingURL=Flags.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Flags.js","sourceRoot":"","sources":["../../src/engine/Flags.ts"],"names":[],"mappings":"AACA;;;;;GAKG;AACH,MAAM,OAAO,KAAK;IAKhB;;;OAGG;IACI,MAAM,CAAC,wBAAwB;QACpC,KAAK,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;IACrC,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,MAAM;QAClB,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;IACvB,CAAC;IAED;;;;;OAKG;IACI,MAAM,CAAC,MAAM;QAClB,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC;QACtB,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC;IACpB,CAAC;IACD;;;OAGG;IACI,MAAM,CAAC,MAAM,CAAC,QAAgB;QACnC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,KAAK,CAAC,kEAAkE,CAAC,CAAC;QAClF,CAAC;QACD,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;IAChC,CAAC;IAED;;;OAGG;IACI,MAAM,CAAC,OAAO,CAAC,QAAgB;QACpC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,KAAK,CAAC,mEAAmE,CAAC,CAAC;QACnF,CAAC;QACD,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC;IACjC,CAAC;IAED;;;OAGG;IACI,MAAM,CAAC,SAAS,CAAC,QAAgB;QACtC,OAAO,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAClC,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,IAAI;QAChB,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACnC,CAAC;;AAhEc,aAAO,GAAG,KAAK,CAAC;AAChB,YAAM,GAA4B,EAAE,CAAC"}
|