Skip to content

Releases: phaserjs/phaser-ce

Phaser CE v2.15.0

10 Mar 14:43
7c9edad
Compare
Choose a tag to compare

Version 2.15.0 - 6 Mar 2020

API Changes

  • Removed Phaser.Component.Core.skipTypeChecks.

Updates

Bug Fixes

  • Fixed multitexture rendering of texture atlases (#644, #641).

Thanks

@Weedshaker

Phaser CE v2.14.0

20 Jan 15:09
8271e37
Compare
Choose a tag to compare

API Changes

  • Looped audio tag sounds no longer dispatch onPlay when looping, only onLoop.
  • Looped Web Audio sound markers no longer dispatch onPlay when looping, only onLoop.

New Features

  • You can pass powerPreference in your game config to set the powerPreference WebGL context attribute when creating the game. Possible values are default, high-performance, and low-power (#652).

Updates

  • Rope.refresh no longer has a pointless duplicated modulus check in the for-loop and iterates from zero, allowing the removal of several direct array assignments.

Bug Fixes

  • Fixed glitching sound playing when using looping audio-sprites with audio-tag (#653).
  • A sprite's tintedTexture canvas is now returned to the Canvas Pool when the sprite is destroyed (#651).

Thanks

@dhashvir, @photonstorm, @rarecoil, @samme, @taoabc

Phaser CE v2.13.3

26 Sep 10:47
8eb7a85
Compare
Choose a tag to compare

Bug Fixes

  • Fixed webGL making excessive calls, which was negatively impacting the frame-rate of low-end machines and mobile devices (#356, #641).
  • Fixed Web Audio sounds failing to play in certain browsers (#588).
  • Fixed Point.fuzzyEquals and Point.fuzzyEqualsXY (#634).
  • Fixed unnecessarily marking a texture dirty when its smoothed property was set but not changed (#636).
  • Fixed some bad output when cloning FrameData (#640).
  • Fixed smoothed setting on textures not being respected (#641).
  • Fixed updateTexture() happening on textures that hadn't loaded their source yet (#641).
  • Fixed a flickering issue on some Android devices (#641).

Thanks

@Cerlancism, @SBCGames, @Tobepeter, @Weedshaker, @ferryhalim, @jamieallen1234, @ndee85, @pieshop, @samme

Phaser CE v2.13.2

24 May 12:31
da7bdf9
Compare
Choose a tag to compare

Bug Fixes

  • Fixed an error when destroying or disabling a button from an input handler (#630).

Thanks

@leandrop20, @photonstorm, @samme, @ts1985, @XWILKINX

Phaser CE v2.13.1

16 May 14:03
4e0311a
Compare
Choose a tag to compare

Bug Fixes

  • Fixed incorrect Sound#currentTime after pause/resume, when using audio tags.
  • Fixed missing mouse movement values when the pointer is locked.
  • Fixed elastic easing functions.

Thanks

@micsun-al, @photonstorm, @samme

Phaser CE v2.13.0

13 May 08:56
3590be0
Compare
Choose a tag to compare

API Changes

If you don't want to worry about managing both input handlers, you can disable MSPointer by passing { mspointer: false } in your game config.

New Features

Bug Fixes

  • Animation speeds are more accurate (#606).

Thanks

@jf-m, @josalmi, @photonstorm, @samme

Phaser CE v2.12.1

07 May 13:50
d17d49b
Compare
Choose a tag to compare

New Features

Bug Fixes

  • Fixed undefined value in BitmapData#smoothed.
  • Better tracking of pointer out events (#624).
  • Fixed alpha for different Creature regions (#625).

Updates

  • Videos now have their playsinline attribute set.
  • Added a warning for Tiled JSON maps version > 1.1. Object properties and tile properties in these maps may not work in Phaser CE. You can enable the json1 plugin and reexport the map in Tiled 1.1 format to use these features in Phaser CE (#623).
  • Hide navigation UI in fullscreen mode in Chrome/Android (#626)

Thanks

@daniel-nth, @highlyinteractive, @mikeks, @ndee85, @photonstorm, @samme, @thomasMeynckens

Phaser CE v2.12.0

06 Feb 10:07
20ab6d1
Compare
Choose a tag to compare

If you're using the loadAnchors argument in the Phaser.Creature constructor, you'll have to change your code.

New Features / API Changes

  • BitmapText has a new property letterSpacing which accepts a positive or negative number to add or reduce spacing between characters.
  • Camera now has new properties centerX and centerY to get the center of the camera's current viewport.
  • Updated Creature runtime. The Phaser.Creature constructor arguments have changed: the loadAnchors argument was removed and a useFlatData argument was added. Phaser.GameObjectFactory#creature also added arguments (mesh, animation, useFlatData) but its existing arguments weren't changed.
  • Phaser.Creature now has new functions setMetaData, enableSkinSwap, disableSkinSwap, setActiveItemSwap, and removeActiveItemSwap adding Skin and Item Swapping support for Creature animations.
  • Phaser.Graphics#getVisualBounds is a new method that gets the bounds (extent) of the shapes drawn on a graphics object (#578). Unlike Phaser.Graphics#getBounds, it gives the same result whether or not a graphics object is being used as a mask.
  • Phaser.SoundManager#baseLatency is a new property representing the processing latency of the underlying Web Audio context, in seconds.

Bug Fixes

  • Fixed issue causing BitmapFont to fail loading if a kerning value for a character that doesn't exist in the font is defined in the xml/json (#598).
  • Fix for Creature runtime modifying the JSON object you give it from the Phaser.Cache making subsequent uses of that JSON not behave in various ways, depending on how you use the runtime (when having multiple Creature objects of the same character for example).
  • Phaser.PointerLock#stop will now only stop its event listeners if they were started in the first place. This avoids issues where a 3rd party lib, such as Ionic, intercepts event functions and parses them itself (thanks @photonstorm and manuelhe).
  • Fixed an error when destroying a touch-locked Video (#616).
  • Fixed an error when unplugging a gamepad (#610).
  • Fixed streaming video in Firefox (#607).
  • Fixed global volume not affecting sounds not currently playing, when using HTML audio (as in IE11) (#617).

Thanks

@Aram19, manuelhe, @micsun-al, @photonstorm, @rroylance, @samme, @Weedshaker, @wtravO

Phaser CE v2.11.1

05 Oct 08:45
5fe5dbc
Compare
Choose a tag to compare

Version 2.11.1 - 2 October 2018

Bug Fixes

  • Fixed an error passing box2d options in the game configuration settings (#553).
  • Fixed some compressed texture formats failing to load (#562).
  • Fixed an issue where if the WebGL renderer failed to initialize that RenderTexture's would still try to use it if no renderer was provided (#575).
  • Fixed an inconsistent return value in BitmapData#copy (#580).
  • Tweens are now cleaned up completely when destroying the game (#581).
  • Game now nulls a reference to itself from PIXI after destroy (#583).
  • Fixed a BitmapFont frame error when using trim frame in atlas (#587).
  • Fixed BitmapData#shadow ignoring blur or x/y offset when set to 0 (#591).

Updates

  • AnimationParser.spriteSheet now tells you the minimum image dimensions it expects if it fails to produce at least one complete frame from the spritesheet (#559).
  • Game now checks SoundManager's muteOnPause property whenever the game's paused property is set so one can control whether sounds play when the game is manually paused. Previously, the property was only used when the game focus was lost in the DOM (#572).

TypeScript definitions

  • Fixed the definition for bitmapText() in GameObjectFactory (#561).
  • Fixed the definition for clear() in RenderTexture (#573).
  • Fixed the definition for Video volume.

Documentation

  • Changed the game configuration object's canvasID property name. The previous name, canvasId, was incorrect and would be ignored.
  • Clarified the spacing argument in Loader#spritesheet (#448, #559).
  • Corrected P2#createGearConstraint (#566).
  • Corrected Tilemap#copy, Tilemap#replace (#586).
  • Typo (#594).
  • Corrected Key#upDuration, Keyboard#upDuration (#595).

Thanks

@B10215029, @CorayThan, @FostUK, @Jazcash, @Lucas-C, @Mertank, @Nek-, @aeonwilliams, @dywedir, @foreverip, @giniwren, @josalmi, @joshlory, @rydash, @samme, @tiagokeller, @zhaxiu3

Phaser CE v2.11.0

26 Jun 20:57
cc43980
Compare
Choose a tag to compare

Version 2.11.0 - 26 June 2018

If you're starting or stopping input handlers manually, you'll have to make some simple changes to your code.

API Changes / New Features

  • Phaser now starts the Pointer Events handler (with capture off) or the Mouse handler (with capture off), but not both. This makes input behavior more consistent and avoids some rare conflicts between the two when running simultaneously.

    If you want to disable the Pointer Events handler, pass { mspointer: false } in your game config. The Mouse handler will be used instead.

    If you want to run both handlers together, you can start the Mouse handler manually. You should also turn on capture for the Pointer Events handler to avoid duplicate events:

    game.input.mouse.start();
    game.input.mspointer.capture = true;
  • Mouse wheel input was moved to input.mouseWheel. The changed properties are

    • input.mouse.wheelDeltainput.mouseWheel.delta
    • input.mouse.mouseWheelCallbackinput.mouseWheel.callback

    The old properties will keep working for now.

  • Pointer lock input was moved to input.pointerLock. The changed properties are

    • input.mouse.pointerLockinput.pointerLock.onChange
    • input.mouse.requestPointerLock()input.pointerLock.request()
    • input.mouse.lockedinput.pointerLock.locked
    • input.mouse.releasePointerLock()input.pointerLock.exit()

    The old properties will keep working for now.

    There is a new Signal, input.pointerLock.onError, dispatched when a request fails.

    Beware that Chrome < 68 doesn't pass movement values when using Pointer Events with pointer lock, so you should use the Mouse handler instead for that.

  • game.debug.inputInfo() now shows which input handlers and pointers are active.

  • All the input handlers have an active property that shows whether they've been started. Their start methods return true if they've been started or false otherwise.

  • The skipFrames argument in AnimationParser#spriteSheet now works as an offset (#514). When positive, it's an offset from the start of the parsed frame list; when negative, it's an offset from the end. Negative frameWidth and frameHeight arguments are no longer allowed.

  • preRender() and postRender() hooks are no longer called for the HEADLESS renderer.

  • game.make.group() no longer assigns a default parent. This is more consistent with the rest of the game.make methods (#525). Use game.add.group() instead to add the Group to the game world.

  • Point.parse() no longer converts coordinates to integers (#502). Use the new method Point.trunc() as well if you want the previous behavior.

  • The default Debug#font is now '14px monospace'.

  • The unused and deprecated property MSPointer#button was removed.

New Features

  • States have a new postUpdate method hook. It's called after game objects have received all their own updates (including physics), but before the Stage has calculated the final transformations.
  • Debug#spriteInfo shows the sprite's parent, if any.
  • When a sprite is being dragged you can read its change in position (as deltaX, deltaY) in the onDragUpdate handler.
  • Phaser.Math.trunc() truncates a number.
  • Phaser.EmptyRectangle replaces PIXI.EmptyRectangle.
  • Debug#device shows device graphics, audio, and input support. It may be helpful on devices where you can't see console output easily.
  • Debug#pointer shows the pointer's movementX/movementY values and button states (for mouse pointers).
  • maxPointers can be passed in the game config, setting Input#maxPointers.

Updates

  • Removed the unnecessary 'Audio source already exists' warning.

Bug Fixes

  • Masks are no longer disabled by getBounds() and are excluded from bounds calculations (#334).
  • Sprites' bringToTop() and sendToBack() methods now work as expected for all parent types, not just Groups (#549).

Thanks

@giniwren, @griever989, @mindcity, @omretterry, @photonstorm, @samme, @Siri0n, @tobspr