Skip to content
This repository has been archived by the owner on Apr 15, 2022. It is now read-only.

Releases: PBS-KIDS/Platypus

Platypus v0.11.9

09 Feb 16:05
Compare
Choose a tag to compare

Minor Changes

  1. TiledLoader: Added the ability to handle tile sets with margin and spacing (647c3c4) and layer offsets (8ecd4bc).
  2. Updated Vector to handle Vector-like objects on set up (1de32bd).
  3. Added "rotate" listener and "orientation-updated" event to LogicRotationalMovement (63321e1, e036fba).
  4. RenderContainer now accepts tint as a string of the form "#ffffff" in addition to the numerical 0xffffff form (9fff317).
  5. Added a RenderText component. This wraps a PIXI.Text display object in a Platypus component for use with Platypus entities (97f5734).

Bug Fixes

  1. Camera has been fixed so that camera rotates about center (23beb3c).
  2. Platypus no longer throws an error when unloading (987522c).
  3. Fixed Vector to return 0 for an angle check on two matching vectors (1de32bd).

Platypus v0.11.8

09 Aug 15:33
Compare
Choose a tag to compare

Minor Changes

  1. RenderContainer has been optimized so that a given entity will only do at most a single check to determine whether it's on camera, rather than two checks.

Bug Fixes

  1. RenderSpine has been fixed so that its entity will not be loaded until it's ready to be rendered.

Platypus v0.11.7

07 Aug 18:36
Compare
Choose a tag to compare

Minor Changes

  1. Set up Scene to trigger "scene-live" without waiting for the end of a SpringRoll state transition. This allows the camera and rendering systems to gear up and show visual content before the transition-in effect begins.

Platypus v0.11.6

20 Jul 17:10
Compare
Choose a tag to compare

Bug Fixes

  1. Fixed Messenger to handle space-delimited events as individual events like SpringRoll's implementation.
  2. LogicButton has been updated to accept malformed pointer events without crashing.
  3. RenderSpine now correctly handles an entity's rotation property.

Platypus v0.11.5

06 Jul 16:15
Compare
Choose a tag to compare

Bug Fixes

  1. A bug in AudioSFX has been fixed to prevent stale audio references from being retained.
  2. LogicButton has been updated to re-position correctly when bottom, left, right, or top properties are dynamically changed.
  3. HandlerRender now pauses correctly when pause events are triggered.

Platypus v0.11.4

21 Jun 20:53
Compare
Choose a tag to compare

Minor Changes

  1. RenderSpine has been updated to support pixi-spine 1.4.0 and the RenderContainer component. Also added support for relaying Spine events.

Bug Fixes

  1. LogicRegionSpawner has been fixed so that it won't break on removal from scene if no regions have been specified.
  2. PIXIAnimation textures are unloaded at the end of a scene to prevent loading issues with following scenes.

Platypus v0.11.3

06 Jun 17:17
Compare
Choose a tag to compare

Minor Changes

  1. RenderDebug: This component now accepts color properties to better distinguish between collision regions.
  2. TiledLoader: "scene-live" is not triggered until all map entities are fully loaded.
  3. AudioSFX now permits adjusting audio pan while a sfx is playing.

Platypus v0.11.2

27 May 00:36
Compare
Choose a tag to compare

Minor Changes

  1. Added a Jasmine-based test-runner to facilitate unit testing going forward. A few basic unit tests are in place.
  2. HandlerCollision: Added a getShapeCollisions() method to allow for shape-checking and a target parameter to collision events to list the entity on which the collision event is initially triggered.
  3. CollisionShape: Added a moveXY() method to complement moveX() and moveY() methods.
  4. Removed the example component "ComponentExample.js". It's now included as part of the Platypus SpringRoll Template
  5. Updated EntityController to allow a drag motion to change joystick direction.
  6. LogicPortable: Added a "force-release" method so portable objects can be released apart from collision dynamics.

Bug Fixes

  1. EntityContainer now correctly adds pre-built entities to the list of entities.
  2. RenderContainer now correctly handles translation and transformation for entities using an Orientation component.
  3. RenderTiles has been updated to correctly support PixiJS v4.5.
  4. Camera's windowToWorld method has been fixed to correctly report camera position.
  5. Fixed a glitch in LogicDirectionalMovement that caused "up" to be reported for "down-left".
  6. Fixed LogicButton's toggle mode to accept pointer events.
  7. Orientation "replace-transform" now accepts a string as documented.

Platypus v0.11.1

25 Apr 00:57
Compare
Choose a tag to compare

Bug Fixes

  1. PIXIAnimation now works correctly with tinting when using PIXI.CanvasRenderer.
  2. RenderContainer now supports tinting children when using PIXI.CanvasRenderer. (The logic used here should probably be revisited if the status of pixi.js issue #2328 changes.)

Platypus v0.11.0

21 Apr 19:26
Compare
Choose a tag to compare

Major Changes

  1. RenderContainer: This new component encapsulates all rendering at the single entity level. This provides a better structure for handling entities composed of more than one render component. RenderContainer handles all display object manipulation so that an entity can be moved or transformed as a whole unit rather than individually manipulating multiple components. The RenderContainer component is automatically added by other render components if it does not already exist on the entity.
  2. An Entity will wait until its dependent components are completely loaded before being added to the world.
  3. The following deprecated items in v0.9.x have been removed: LogicCanvasButton component, HandlerRender's acceptInput property; RenderSprite's acceptInput property, "stop-sprite" event, and "play-sprite" event; and LogicButton's "down" state.

Minor Changes

  1. Entity: Added a toJSON method that will return the entity as a JSON definition that can be used to rebuild the entity via EntityContainer's addEntity method. This also adds toJSON methods to the following classes needed by Entity: Component, CollisionShape, and DataMap.
  2. HandlerCollision: Added a getPointCollisions method to check a coordinate against the world's colliding entities.
  3. Camera: Moved windowToWorld and worldToWindow methods to the Camera from HandlerRender.
  4. LogicAttachment: Made attached position dynamic with "change-attachment-offset" event listener.
  5. HandlerRender now exposes its PIXI Container on the layer entity as worldContainer.
  6. AABB: Added collidesPoint method to detect intersection exclusively (as opposed to containsPoint which is an inclusive check).

Bug Fixes

  1. StateRender now pairs with a render component so visual behavior is not corrupted for entities having more than one state-based render component.
  2. Entity: Fixed auto-generation of entity ids to prevent duplicates, and fixed stored event triggers to report a value of -1 if there are message ids matching the stored event.
  3. Fixed HandlerLogic to be aware of its own looping state for all logic loop events.
  4. Fixed CollisionBasic so that it cannot be added to the collision system multiple times.
  5. Fixed LogicButton's toggle to work correctly with pointer events.