@makefully/platypus 4.1.9 → 4.1.11
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/CHANGELOG.md +30 -0
- package/lib/platypus.js +1 -1
- package/package.json +1 -1
- package/src/AssetManager.js +46 -2
- package/src/PIXIAnimation.js +102 -23
- package/src/VOPlayer.js +1 -1
- package/src/components/LevelBuilder.js +254 -65
- package/src/components/Render.js +23 -7
- package/src/components/RenderSprite.js +10 -1
- package/src/components/TiledLoader.js +8 -4
- package/src/utils/clone.js +11 -0
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,36 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [4.1.11] - 2026-06-25
|
|
11
|
+
|
|
12
|
+
### Added
|
|
13
|
+
|
|
14
|
+
- **PIXIAnimation:** `invalidateTextureSources` clears cached texture sources when an asset is unloaded.
|
|
15
|
+
- Unit tests for `PIXIAnimation` sprite sheet cache ids and texture source invalidation.
|
|
16
|
+
|
|
17
|
+
### Fixed
|
|
18
|
+
|
|
19
|
+
- **LevelBuilder:** Throws informative errors when `levelPieces` or `levelTemplate` are incomplete or invalid (missing levels, empty rows, non-rectangular templates, incomplete level definitions) instead of generic undefined property errors.
|
|
20
|
+
- **PIXIAnimation:** Resolves texture assets by full path or image basename; updates cached texture sources when the underlying asset changes; sprite sheet cache ids use content hashes instead of truncated JSON to avoid collisions.
|
|
21
|
+
- **AssetManager:** Invalidates `PIXIAnimation` texture sources when unloading assets.
|
|
22
|
+
- **Render / RenderSprite:** `getAssetList` registers image aliases via `getFileId` for webpack URL resolution.
|
|
23
|
+
|
|
24
|
+
## [4.1.10] - 2026-06-23
|
|
25
|
+
|
|
26
|
+
### Added
|
|
27
|
+
|
|
28
|
+
- `cloneDefinition` utility for deep-copying JSON-like Platypus definitions.
|
|
29
|
+
- `LevelBuilder#cloneLevel` public method.
|
|
30
|
+
- Unit tests for level composition isolation and TiledLoader entity template isolation.
|
|
31
|
+
|
|
32
|
+
### Fixed
|
|
33
|
+
|
|
34
|
+
- **LevelBuilder:** Composed levels are deep-cloned so merges, mirrors, and replay do not share or corrupt source data; `created-level` dispatches an isolated snapshot; skips re-composition when a pre-built level object is already supplied.
|
|
35
|
+
- **AssetManager:** Relinks assets already registered with Pixi between scene loads; `get()` falls back to `getFileId` for webpack URL lookups.
|
|
36
|
+
- **Render:** Warns when initializing with an image not in the asset cache.
|
|
37
|
+
- **TiledLoader:** Deep-copies entity templates from settings when creating layer entities; caches `level.assets` only for named level ids; passes tilesets when collecting assets from tile objectgroups.
|
|
38
|
+
- **VOPlayer:** `unloadSound` uses `getFileId` so asset reference counts match loaded aliases.
|
|
39
|
+
|
|
10
40
|
## [4.1.9] - 2026-06-22
|
|
11
41
|
|
|
12
42
|
### Added
|