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,139 @@
|
|
|
1
|
+
import { Vector } from '../Math/vector';
|
|
2
|
+
import { Logger } from '../Util/Log';
|
|
3
|
+
import { Graphic } from './Graphic';
|
|
4
|
+
import { BoundingBox } from '..';
|
|
5
|
+
export class SpriteFont extends Graphic {
|
|
6
|
+
constructor(options) {
|
|
7
|
+
super(options);
|
|
8
|
+
this._text = '';
|
|
9
|
+
this.alphabet = '';
|
|
10
|
+
this.shadow = null;
|
|
11
|
+
this.caseInsensitive = false;
|
|
12
|
+
this.spacing = 0;
|
|
13
|
+
this._logger = Logger.getInstance();
|
|
14
|
+
this._alreadyWarnedAlphabet = false;
|
|
15
|
+
this._alreadyWarnedSpriteSheet = false;
|
|
16
|
+
const { alphabet, spriteSheet, caseInsensitive, spacing, shadow } = options;
|
|
17
|
+
this.alphabet = alphabet;
|
|
18
|
+
this.spriteSheet = spriteSheet;
|
|
19
|
+
this.caseInsensitive = caseInsensitive !== null && caseInsensitive !== void 0 ? caseInsensitive : this.caseInsensitive;
|
|
20
|
+
this.spacing = spacing !== null && spacing !== void 0 ? spacing : this.spacing;
|
|
21
|
+
this.shadow = shadow !== null && shadow !== void 0 ? shadow : this.shadow;
|
|
22
|
+
}
|
|
23
|
+
_getCharacterSprites(text) {
|
|
24
|
+
const results = [];
|
|
25
|
+
// handle case insensitive
|
|
26
|
+
const textToRender = this.caseInsensitive ? text.toLocaleLowerCase() : text;
|
|
27
|
+
const alphabet = this.caseInsensitive ? this.alphabet.toLocaleLowerCase() : this.alphabet;
|
|
28
|
+
// for each letter in text
|
|
29
|
+
for (let letterIndex = 0; letterIndex < textToRender.length; letterIndex++) {
|
|
30
|
+
// find the sprite index in alphabet , if there is an error pick the first
|
|
31
|
+
const letter = textToRender[letterIndex];
|
|
32
|
+
let spriteIndex = alphabet.indexOf(letter);
|
|
33
|
+
if (spriteIndex === -1) {
|
|
34
|
+
spriteIndex = 0;
|
|
35
|
+
if (!this._alreadyWarnedAlphabet) {
|
|
36
|
+
this._logger.warn(`SpriteFont - Cannot find letter '${letter}' in configured alphabet '${alphabet}'.`);
|
|
37
|
+
this._logger.warn('There maybe be more issues in the SpriteFont configuration. No additional warnings will be logged.');
|
|
38
|
+
this._alreadyWarnedAlphabet = true;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
const letterSprite = this.spriteSheet.sprites[spriteIndex];
|
|
42
|
+
if (letterSprite) {
|
|
43
|
+
results.push(letterSprite);
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
if (!this._alreadyWarnedSpriteSheet) {
|
|
47
|
+
this._logger.warn(`SpriteFont - Cannot find sprite for '${letter}' at index '${spriteIndex}' in configured SpriteSheet`);
|
|
48
|
+
this._logger.warn('There maybe be more issues in the SpriteFont configuration. No additional warnings will be logged.');
|
|
49
|
+
this._alreadyWarnedSpriteSheet = true;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
return results;
|
|
54
|
+
}
|
|
55
|
+
measureText(text, maxWidth) {
|
|
56
|
+
const lines = this._getLinesFromText(text, maxWidth);
|
|
57
|
+
const maxWidthLine = lines.reduce((a, b) => {
|
|
58
|
+
return a.length > b.length ? a : b;
|
|
59
|
+
});
|
|
60
|
+
const sprites = this._getCharacterSprites(maxWidthLine);
|
|
61
|
+
let width = 0;
|
|
62
|
+
let height = 0;
|
|
63
|
+
for (const sprite of sprites) {
|
|
64
|
+
width += sprite.width + this.spacing;
|
|
65
|
+
height = Math.max(height, sprite.height);
|
|
66
|
+
}
|
|
67
|
+
return BoundingBox.fromDimension(width, height * lines.length, Vector.Zero);
|
|
68
|
+
}
|
|
69
|
+
_drawImage(ex, x, y, maxWidth) {
|
|
70
|
+
let xCursor = 0;
|
|
71
|
+
let yCursor = 0;
|
|
72
|
+
let height = 0;
|
|
73
|
+
const lines = this._getLinesFromText(this._text, maxWidth);
|
|
74
|
+
for (const line of lines) {
|
|
75
|
+
for (const sprite of this._getCharacterSprites(line)) {
|
|
76
|
+
// draw it in the right spot and increase the cursor by sprite width
|
|
77
|
+
sprite.draw(ex, x + xCursor, y + yCursor);
|
|
78
|
+
xCursor += sprite.width + this.spacing;
|
|
79
|
+
height = Math.max(height, sprite.height);
|
|
80
|
+
}
|
|
81
|
+
xCursor = 0;
|
|
82
|
+
yCursor += height;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
render(ex, text, _color, x, y, maxWidth) {
|
|
86
|
+
// SpriteFont doesn't support _color, yet...
|
|
87
|
+
this._text = text;
|
|
88
|
+
const bounds = this.measureText(text, maxWidth);
|
|
89
|
+
this.width = bounds.width;
|
|
90
|
+
this.height = bounds.height;
|
|
91
|
+
if (this.shadow) {
|
|
92
|
+
ex.save();
|
|
93
|
+
ex.translate(this.shadow.offset.x, this.shadow.offset.y);
|
|
94
|
+
this._preDraw(ex, x, y);
|
|
95
|
+
this._drawImage(ex, 0, 0, maxWidth);
|
|
96
|
+
this._postDraw(ex);
|
|
97
|
+
ex.restore();
|
|
98
|
+
}
|
|
99
|
+
this._preDraw(ex, x, y);
|
|
100
|
+
this._drawImage(ex, 0, 0, maxWidth);
|
|
101
|
+
this._postDraw(ex);
|
|
102
|
+
}
|
|
103
|
+
clone() {
|
|
104
|
+
return new SpriteFont({
|
|
105
|
+
alphabet: this.alphabet,
|
|
106
|
+
spriteSheet: this.spriteSheet,
|
|
107
|
+
spacing: this.spacing
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
_getLinesFromText(text, maxWidth) {
|
|
111
|
+
if (this._cachedText === text && this._cachedRenderWidth === maxWidth) {
|
|
112
|
+
return this._cachedLines;
|
|
113
|
+
}
|
|
114
|
+
const lines = text.split('\n');
|
|
115
|
+
if (maxWidth == null) {
|
|
116
|
+
return lines;
|
|
117
|
+
}
|
|
118
|
+
// If the current line goes past the maxWidth, append a new line without modifying the underlying text.
|
|
119
|
+
for (let i = 0; i < lines.length; i++) {
|
|
120
|
+
let line = lines[i];
|
|
121
|
+
let newLine = '';
|
|
122
|
+
// Note: we subtract the spacing to counter the initial padding on the left side.
|
|
123
|
+
if (this.measureText(line).width > maxWidth) {
|
|
124
|
+
while (this.measureText(line).width > maxWidth) {
|
|
125
|
+
newLine = line[line.length - 1] + newLine;
|
|
126
|
+
line = line.slice(0, -1); // Remove last character from line
|
|
127
|
+
}
|
|
128
|
+
// Update the array with our new values
|
|
129
|
+
lines[i] = line;
|
|
130
|
+
lines[i + 1] = newLine;
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
this._cachedText = text;
|
|
134
|
+
this._cachedLines = lines;
|
|
135
|
+
this._cachedRenderWidth = maxWidth;
|
|
136
|
+
return lines;
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
//# sourceMappingURL=SpriteFont.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SpriteFont.js","sourceRoot":"","sources":["../../../src/engine/Graphics/SpriteFont.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
import { Sprite } from './Sprite';
|
|
2
|
+
import { Logger } from '../Util/Log';
|
|
3
|
+
/**
|
|
4
|
+
* Represents a collection of sprites from a source image with some organization in a grid
|
|
5
|
+
*/
|
|
6
|
+
export class SpriteSheet {
|
|
7
|
+
/**
|
|
8
|
+
* Build a new sprite sheet from a list of sprites
|
|
9
|
+
*
|
|
10
|
+
* Use [[SpriteSheet.fromImageSource]] to create a SpriteSheet from an [[ImageSource]] organized in a grid
|
|
11
|
+
* @param options
|
|
12
|
+
*/
|
|
13
|
+
constructor(options) {
|
|
14
|
+
this._logger = Logger.getInstance();
|
|
15
|
+
this.sprites = [];
|
|
16
|
+
const { sprites, rows, columns } = options;
|
|
17
|
+
this.sprites = sprites;
|
|
18
|
+
this.rows = rows !== null && rows !== void 0 ? rows : 1;
|
|
19
|
+
this.columns = columns !== null && columns !== void 0 ? columns : this.sprites.length;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Find a sprite by their x/y position in the SpriteSheet, for example `getSprite(0, 0)` is the [[Sprite]] in the top-left
|
|
23
|
+
* @param x
|
|
24
|
+
* @param y
|
|
25
|
+
*/
|
|
26
|
+
getSprite(x, y) {
|
|
27
|
+
if (x >= this.columns || x < 0) {
|
|
28
|
+
this._logger.warn(`No sprite exists in the SpriteSheet at (${x}, ${y}), x: ${x} should be between 0 and ${this.columns - 1}`);
|
|
29
|
+
return null;
|
|
30
|
+
}
|
|
31
|
+
if (y >= this.rows || y < 0) {
|
|
32
|
+
this._logger.warn(`No sprite exists in the SpriteSheet at (${x}, ${y}), y: ${y} should be between 0 and ${this.rows - 1}`);
|
|
33
|
+
return null;
|
|
34
|
+
}
|
|
35
|
+
const spriteIndex = x + y * this.columns;
|
|
36
|
+
return this.sprites[spriteIndex];
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Create a sprite sheet from a sparse set of [[SourceView]] rectangles
|
|
40
|
+
* @param options
|
|
41
|
+
*/
|
|
42
|
+
static fromImageSourceWithSourceViews(options) {
|
|
43
|
+
const sprites = options.sourceViews.map(sourceView => {
|
|
44
|
+
return new Sprite({
|
|
45
|
+
image: options.image,
|
|
46
|
+
sourceView
|
|
47
|
+
});
|
|
48
|
+
});
|
|
49
|
+
return new SpriteSheet({ sprites });
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Create a SpriteSheet from an [[ImageSource]] organized in a grid
|
|
53
|
+
*
|
|
54
|
+
* Example:
|
|
55
|
+
* ```
|
|
56
|
+
* const spriteSheet = SpriteSheet.fromImageSource({
|
|
57
|
+
* image: imageSource,
|
|
58
|
+
* grid: {
|
|
59
|
+
* rows: 5,
|
|
60
|
+
* columns: 2,
|
|
61
|
+
* spriteWidth: 32, // pixels
|
|
62
|
+
* spriteHeight: 32 // pixels
|
|
63
|
+
* },
|
|
64
|
+
* // Optionally specify spacing
|
|
65
|
+
* spacing: {
|
|
66
|
+
* // pixels from the top left to start the sprite parsing
|
|
67
|
+
* originOffset: {
|
|
68
|
+
* x: 5,
|
|
69
|
+
* y: 5
|
|
70
|
+
* },
|
|
71
|
+
* // pixels between each sprite while parsing
|
|
72
|
+
* margin: {
|
|
73
|
+
* x: 1,
|
|
74
|
+
* y: 1
|
|
75
|
+
* }
|
|
76
|
+
* }
|
|
77
|
+
* })
|
|
78
|
+
* ```
|
|
79
|
+
* @param options
|
|
80
|
+
*/
|
|
81
|
+
static fromImageSource(options) {
|
|
82
|
+
var _a;
|
|
83
|
+
const sprites = [];
|
|
84
|
+
options.spacing = (_a = options.spacing) !== null && _a !== void 0 ? _a : {};
|
|
85
|
+
const { image, grid: { rows, columns: cols, spriteWidth, spriteHeight }, spacing: { originOffset, margin } } = options;
|
|
86
|
+
const offsetDefaults = { x: 0, y: 0, ...originOffset };
|
|
87
|
+
const marginDefaults = { x: 0, y: 0, ...margin };
|
|
88
|
+
for (let x = 0; x < cols; x++) {
|
|
89
|
+
for (let y = 0; y < rows; y++) {
|
|
90
|
+
sprites[x + y * cols] = new Sprite({
|
|
91
|
+
image: image,
|
|
92
|
+
sourceView: {
|
|
93
|
+
x: x * spriteWidth + marginDefaults.x * x + offsetDefaults.x,
|
|
94
|
+
y: y * spriteHeight + marginDefaults.y * y + offsetDefaults.y,
|
|
95
|
+
width: spriteWidth,
|
|
96
|
+
height: spriteHeight
|
|
97
|
+
},
|
|
98
|
+
destSize: { height: spriteHeight, width: spriteWidth }
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
return new SpriteSheet({
|
|
103
|
+
sprites: sprites,
|
|
104
|
+
rows: rows,
|
|
105
|
+
columns: cols
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
clone() {
|
|
109
|
+
return new SpriteSheet({
|
|
110
|
+
sprites: this.sprites.map(sprite => sprite.clone()),
|
|
111
|
+
rows: this.rows,
|
|
112
|
+
columns: this.columns
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
//# sourceMappingURL=SpriteSheet.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SpriteSheet.js","sourceRoot":"","sources":["../../../src/engine/Graphics/SpriteSheet.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import { Graphic } from './Graphic';
|
|
2
|
+
import { Color } from '../Color';
|
|
3
|
+
import { Font } from './Font';
|
|
4
|
+
/**
|
|
5
|
+
* Represent Text graphics in excalibur
|
|
6
|
+
*
|
|
7
|
+
* Useful for in game labels, ui, or overlays
|
|
8
|
+
*/
|
|
9
|
+
export class Text extends Graphic {
|
|
10
|
+
constructor(options) {
|
|
11
|
+
var _a, _b;
|
|
12
|
+
super(options);
|
|
13
|
+
this._text = '';
|
|
14
|
+
this._textWidth = 0;
|
|
15
|
+
this._textHeight = 0;
|
|
16
|
+
// This order is important font, color, then text
|
|
17
|
+
this.font = (_a = options.font) !== null && _a !== void 0 ? _a : new Font();
|
|
18
|
+
this.color = (_b = options.color) !== null && _b !== void 0 ? _b : this.color;
|
|
19
|
+
this.text = options.text;
|
|
20
|
+
this.maxWidth = options.maxWidth;
|
|
21
|
+
}
|
|
22
|
+
clone() {
|
|
23
|
+
var _a, _b;
|
|
24
|
+
return new Text({
|
|
25
|
+
text: this.text.slice(),
|
|
26
|
+
color: (_b = (_a = this.color) === null || _a === void 0 ? void 0 : _a.clone()) !== null && _b !== void 0 ? _b : Color.Black,
|
|
27
|
+
font: this.font.clone(),
|
|
28
|
+
maxWidth: this.maxWidth
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
get text() {
|
|
32
|
+
return this._text;
|
|
33
|
+
}
|
|
34
|
+
set text(value) {
|
|
35
|
+
this._text = value;
|
|
36
|
+
this._calculateDimension();
|
|
37
|
+
}
|
|
38
|
+
get font() {
|
|
39
|
+
return this._font;
|
|
40
|
+
}
|
|
41
|
+
set font(font) {
|
|
42
|
+
this._font = font;
|
|
43
|
+
}
|
|
44
|
+
get width() {
|
|
45
|
+
if (this._textWidth === 0) {
|
|
46
|
+
this._calculateDimension();
|
|
47
|
+
}
|
|
48
|
+
return this._textWidth * this.scale.x;
|
|
49
|
+
}
|
|
50
|
+
get height() {
|
|
51
|
+
if (this._textHeight === 0) {
|
|
52
|
+
this._calculateDimension();
|
|
53
|
+
}
|
|
54
|
+
return this._textHeight * this.scale.y;
|
|
55
|
+
}
|
|
56
|
+
_calculateDimension() {
|
|
57
|
+
const { width, height } = this.font.measureText(this._text, this.maxWidth);
|
|
58
|
+
this._textWidth = width;
|
|
59
|
+
this._textHeight = height;
|
|
60
|
+
}
|
|
61
|
+
get localBounds() {
|
|
62
|
+
return this.font.measureText(this._text, this.maxWidth).scale(this.scale);
|
|
63
|
+
}
|
|
64
|
+
_rotate(_ex) {
|
|
65
|
+
// None this is delegated to font
|
|
66
|
+
// This override erases the default behavior
|
|
67
|
+
}
|
|
68
|
+
_flip(_ex) {
|
|
69
|
+
// None this is delegated to font
|
|
70
|
+
// This override erases the default behavior
|
|
71
|
+
}
|
|
72
|
+
_preDraw(ex, x, y) {
|
|
73
|
+
if (this.isStale() || this.font.isStale()) {
|
|
74
|
+
this.font.flipHorizontal = this.flipHorizontal;
|
|
75
|
+
this.font.flipVertical = this.flipVertical;
|
|
76
|
+
this.font.rotation = this.rotation;
|
|
77
|
+
this.font.origin = this.origin;
|
|
78
|
+
this.font.opacity = this.opacity;
|
|
79
|
+
}
|
|
80
|
+
this.font.tint = this.tint;
|
|
81
|
+
super._preDraw(ex, x, y);
|
|
82
|
+
}
|
|
83
|
+
_drawImage(ex, x, y) {
|
|
84
|
+
var _a;
|
|
85
|
+
let color = Color.Black;
|
|
86
|
+
if (this.font instanceof Font) {
|
|
87
|
+
color = (_a = this.color) !== null && _a !== void 0 ? _a : this.font.color;
|
|
88
|
+
}
|
|
89
|
+
const { width, height } = this.font.measureText(this._text, this.maxWidth);
|
|
90
|
+
this._textWidth = width;
|
|
91
|
+
this._textHeight = height;
|
|
92
|
+
this.font.render(ex, this._text, color, x, y, this.maxWidth);
|
|
93
|
+
if (this.font.showDebug) {
|
|
94
|
+
ex.debug.drawRect(x - width, y - height, width * 2, height * 2);
|
|
95
|
+
if (this.maxWidth != null) {
|
|
96
|
+
ex.debug.drawRect(x, y, this.maxWidth, this.height, {
|
|
97
|
+
color: Color.Yellow
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
//# sourceMappingURL=Text.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Text.js","sourceRoot":"","sources":["../../../src/engine/Graphics/Text.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
// Graphics
|
|
2
|
+
export * from './Graphic';
|
|
3
|
+
export * from './Sprite';
|
|
4
|
+
export * from './SpriteSheet';
|
|
5
|
+
export * from './GraphicsGroup';
|
|
6
|
+
export * from './ImageSource';
|
|
7
|
+
export * from './Animation';
|
|
8
|
+
export * from './Line';
|
|
9
|
+
// Graphics ECS
|
|
10
|
+
export * from './GraphicsComponent';
|
|
11
|
+
export * from './DebugGraphicsComponent';
|
|
12
|
+
export * from './GraphicsSystem';
|
|
13
|
+
export * from './OffscreenSystem';
|
|
14
|
+
export * from './ParallaxComponent';
|
|
15
|
+
// Raster graphics
|
|
16
|
+
export * from './Raster';
|
|
17
|
+
export * from './Circle';
|
|
18
|
+
export * from './Rectangle';
|
|
19
|
+
export * from './Polygon';
|
|
20
|
+
export * from './Text';
|
|
21
|
+
export * from './FontCommon';
|
|
22
|
+
export * from './Font';
|
|
23
|
+
export * from './FontCache';
|
|
24
|
+
export * from './SpriteFont';
|
|
25
|
+
export * from './Canvas';
|
|
26
|
+
export * from './Context/ExcaliburGraphicsContext';
|
|
27
|
+
export * from './Context/ExcaliburGraphicsContext2DCanvas';
|
|
28
|
+
export * from './Context/ExcaliburGraphicsContextWebGL';
|
|
29
|
+
export * from './Context/debug-text';
|
|
30
|
+
// Post Processor
|
|
31
|
+
export * from './PostProcessor/PostProcessor';
|
|
32
|
+
export * from './PostProcessor/ScreenShader';
|
|
33
|
+
export * from './PostProcessor/ColorBlindnessMode';
|
|
34
|
+
export * from './PostProcessor/ColorBlindnessPostProcessor';
|
|
35
|
+
export * from './Context/texture-loader';
|
|
36
|
+
export * from './Filtering';
|
|
37
|
+
// Rendering
|
|
38
|
+
export * from './Context/shader';
|
|
39
|
+
export * from './Context/vertex-buffer';
|
|
40
|
+
export * from './Context/vertex-layout';
|
|
41
|
+
export * from './Context/quad-index-buffer';
|
|
42
|
+
export * from './Context/material';
|
|
43
|
+
// Util
|
|
44
|
+
import * as webgl from './Context/webgl-util';
|
|
45
|
+
export { webgl };
|
|
46
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/engine/Graphics/index.ts"],"names":[],"mappings":"AAAA,WAAW;AACX,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,QAAQ,CAAC;AAEvB,eAAe;AACf,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AAEpC,kBAAkB;AAClB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,QAAQ,CAAC;AACvB,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AAEzB,cAAc,oCAAoC,CAAC;AACnD,cAAc,4CAA4C,CAAC;AAC3D,cAAc,yCAAyC,CAAC;AAExD,cAAc,sBAAsB,CAAC;AAErC,iBAAiB;AACjB,cAAc,+BAA+B,CAAC;AAC9C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oCAAoC,CAAC;AACnD,cAAc,6CAA6C,CAAC;AAE5D,cAAc,0BAA0B,CAAC;AACzC,cAAc,aAAa,CAAC;AAG5B,YAAY;AACZ,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,oBAAoB,CAAC;AAEnC,OAAO;AAEP,OAAO,KAAK,KAAK,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,KAAK,EAAE,CAAC"}
|
package/build/dist/Id.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Id.js","sourceRoot":"","sources":["../../src/engine/Id.ts"],"names":[],"mappings":"AAKA;;GAEG;AACH,MAAM,UAAU,QAAQ,CAAmB,IAAO,EAAE,KAAa;IAC/D,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AACzB,CAAC;AAAA,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CapturePointerConfig.js","sourceRoot":"","sources":["../../../src/engine/Input/CapturePointerConfig.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EngineInput.js","sourceRoot":"","sources":["../../../src/engine/Input/EngineInput.ts"],"names":[],"mappings":""}
|