Breaking Changes
- Remove obsolete
.extend()
semantics in Class.ts as as well as related test cases.
Added
- Added new option for constructing bounding boxes. You can now construct with an options
object rather than only individual coordinate parameters. (#1151) - Added new interface for specifying the type of the options object passed to the
bounding box constructor. - Added the
ex.vec(x, y)
shorthand for creating vectors.
(#1340) - Added new event
processed
toSound
that passes processedstring | AudioBuffer
data. (#1474) - Added new property
duration
toSound
andAudioInstance
that exposes the track's duration in seconds when Web Audio API is used. (#1474)
Changed
- Animation no longer mutate underlying sprites, instead they draw the sprite using the animations parameters. This allows more robust flipping at runtime. (#1258)
- Changed obsolete decorator to only log the same message 5 times. (#1281)
- Switched to core-js based polyfills instead of custom written ones (#1214)
- Updated to TypeScript@3.6.4 and node 10 LTS build
Sound.stop()
now always rewinds the track, even when the sound is paused. (#1474)
Deprecated
ex.Vector.magnitude()
will be removed inv0.25.0
, useex.Vector.size()
. (#1277)
Fixed
- Fixed Excalibur crashing when displaying both a tilemap and a zero-size actor (#1418)
- Fixed animation flipping behavior (#1172)
- Fixed actors being drawn when their opacity is 0 (#875)
- Fixed iframe event handling, excalibur will respond to keyboard events from the top window (#1294)
- Fixed camera to be vector backed so
ex.Camera.x = ?
andex.Camera.pos.setTo(...)
both work as expected(#1299) - Fixed missing on/once/off signatures on
ex.Pointer
(#1345) - Fixed sounds not being stopped when
Engine.stop()
is called. (#1476)
Thanks to @JeTmAn1981, @gargrave, @SirKitboard, @Guzzler, @saahilk, @djcsdy, @chrispanag, @MaanasArora, @jlennox, @jweissman, @HParker, @jurca, and @DaVince for their contributions!