Releases: kaplayjs/kaplay
4000.0.0-alpha.18
What's Changed
- fix: timer was waiting 2 loops to call onEnd instead of immediately on the last loop by @dragoncoder047 in #633
- fix: make offscreen component able to change the offscreen distance by @dragoncoder047 in #611
- test: new testing by @lajbel in #656
- fix: Fixes issues in 9slice (anchor and empty center) by @mflerackers in #658
- fix: Fixes outline on circles by @mflerackers in #657
- test: add tests to type inferance in Game Obj by @lajbel in #660
- feat: tuple component list by @lajbel in #662
- fmt: super fmt by @lajbel in #663
- fix: callback on collideupdate asking for a keventcontroller by @amyspark-ng in #665
- feat: Send
make()
to the doom by @lajbel in #666 - tests: clarify tests in general, add test for plugins by @lajbel in #669
- chore: clarify make code and rename GameObj test to add by @lajbel in #668
- feat: allow changing font mid-text and add stretch in place option by @dragoncoder047 in #676
- refactor: Part 1 by @lajbel in #675
- refactor: Part 2 by @lajbel in #677
- Picture as render target, drawon can now be used for caching child draw by @mflerackers in #679
- feat: level component by @KeSuave in #648
- docs: add jsdoc to RNG class by @ErikGXDev in #670
- refactor: rename src/index.ts to src/main.ts by @lajbel in #680
- types: remove barrels and others by @lajbel in #681
- fix: types, remove all barrels by @lajbel in #682
- chore: bump esbuild from 0.21.5 to 0.25.0 by @dependabot in #684
- tests: add some tests and fix test script for tests that intentionally fail by @dragoncoder047 in #689
- feat: Text formatting API exposed and fix line height of stretching characters by @dragoncoder047 in #687
- fix: make wave() able to lerp any lerpable value by @dragoncoder047 in #690
- feat: allow individual characters to have a shader by @dragoncoder047 in #691
- docs: add much to changelog by @dragoncoder047 in #693
- fix: toWorld() and toScreen() not working correctly with letterbox and scale by @lajbel in #692
- fix: deps by @lajbel in #694
- fix: resolveSound is undefined by @lajbel in #695
- fix: some examples were bugged by @dragoncoder047 in #696
- fix: rewrite and explain viewport, canvas, scaling and stretching, remove
stretch
by @lajbel in #697 - fix: remove the green dot in mousePos by @lajbel in #700
- fix: type correctly onUse and onUnuse by @lajbel in #699
- refactor: rename stack by @lajbel in #698
- Improved github templates by @amyspark-ng in #703
- fix: fix bug.yml by @amyspark-ng in #708
- fix: restore changelog by @lajbel in #709
- refactor: change order of use, make and type make better by @lajbel in #707
- feat: improve text input by @dragoncoder047 in #722
- fix: use getRenderProps for video draw by @daviembrito in #725
- chore: add summary in PR template by @lajbel in #727
- feat: described examples by @lajbel in #713
- refactor: (Described Examples Part 2) remove assets, move to examples/, simpler path by @lajbel in #728
- feat: mayus by @amyspark-ng in #726
New Contributors
- @daviembrito made their first contribution in #725
Full Changelog: 4000.0.0-alpha.17...4000.0.0-alpha.18
3001.0.12
3001.0.11
This is probably the final release with a feature proper of v4000. From now, v3001 will be maintained with bug fixes, but not more with features. All efforts will be on v4000
, so you should give a try
[3001.0.11] - 2025-04-12
Added
-
Added CSS Colors! 🎨 (experimental) - @lajbel (based on
@dragoncoder047 idea) (experimental)color("slateblue"); color("red"); color("wheat"); color("tomato"); // yum!
-
Added
loadHappy()
font to load a default font, happy :D - @lajbelkaplay({ font: "happy" }); loadHappy(); add([text("ohhi")]);
Fixed
4000.0.0-alpha.17
What's Changed
- fix: AreaComp.onClick now returns KEventController by @lajbel in #609
- More allocations eliminated by @mflerackers in #614
- feat: Missing convenience methods onTag and onUnTag and fixes livequery in case of tagsAsComponents by @mflerackers in #617
- feat: Slice game by @mflerackers in #619
- docs: add jsdoc to shader, area and follow properties by @ErikGXDev in #612
- perf: make events somewhat faster by @dragoncoder047 in #610
- fix: debug.timeScale wasn't affecting dt() by @lajbel in #624
- fix: wrong calculation in vector dot by @andrenanninga in #629
- Added some tests by @mflerackers in #630
- fix: addLevel type definition by @KeSuave in #639
- doc: Add clarification to loadAseprite by @amyspark-ng in #640
- fix: inspect view now shows the tags even after the tagsAsComponents refactor by @dragoncoder047 in #634
- fix: pointer lock undefined catch error for non-promise version [cherry-pick] by @imaginarny in #632
- fix: catch errors for missing dependencies in object creation by @lajbel in #641
- fix: only select an object for inspecting if the object is not paused by @dragoncoder047 in #635
- chore: correct misspelling in README.md by @magentapenguin in #647
- feat: Picture API by @mflerackers in #650
- drawCanvas by @mflerackers in #652
- feat: Video component by @mflerackers in #651
- feat: Video size for area, picture component by @mflerackers in #653
New Contributors
- @andrenanninga made their first contribution in #629
- @KeSuave made their first contribution in #639
- @magentapenguin made their first contribution in #647
Full Changelog: 4000.0.0-alpha.16...4000.0.0-alpha.17
3001.0.10
[3001.0.11] - 2025-04-12
Added
-
Added CSS Colors! 🎨 (experimental) - @lajbel (based on
@dragoncoder047 idea) (experimental)color("slateblue"); color("red"); color("wheat"); color("tomato"); // yum!
-
Added
loadHappy()
font to load a default font, happy :D - @lajbelkaplay({ font: "happy" }); loadHappy(); add([text("ohhi")]);
Fixed
4000.0.0-alpha.16
Hey, lajbel here. It's been a while without any new alphas. From now, we will release a new alpha every Saturday.
I can say that this new alpha brings the last changes of the last 2 months. I will soon create a better way to track specific alpha changes, but here is the general changelog:
What's Changed
- fix: Fixes effectors by @mflerackers in #558
- fix: typos in changelog by @dragoncoder047 in #561
- feat: Makes parent configurable by @mflerackers in #562
- chore: format all files and fix test by @lajbel in #564
- feat: the S in ECS by @mflerackers in #565
- fix: Fixes double push, exports system. by @mflerackers in #567
- chore: prepare changelog for v3001.0.5 by @lajbel in #563
- doc: better changelog using Keep a Changelog by @lajbel in #568
- doc: experimental tags in entries by @lajbel in #569
- doc: wrong reference by @dragoncoder047 in #570
- feat: text wrap all lines using flag by @dragoncoder047 in #560
- feat: add ability to override text styles by @dragoncoder047 in #559
- fix: parent set to null by @dragoncoder047 in #576
- feat: strict .use() by @lajbel in #579
- chore: Swap To MIT With No-AI Clause(s) by @niceEli in #580
- fix: Fixed shader to apply alpha correctly by @mflerackers in #583
- feat: add spriteAtlasPadding configuration option by @marianyp in #582
- chore: funding in package.json by @lajbel in #588
- feat: added option for sprites to be imported as a separate texture by @chqs-git in #581
- fix: fix unintentional children mutation by @marianyp in #586
- doc: replace kaboom with kaplay in README.md by @remarkablemark in #594
- fix: global trigger args not being passed by @lajbel in #590
- feat: add frames list option to sprite animation by @dragoncoder047 in #575
- fix: screenPos() worldPos() correctly type set functionality (and other type errors) by @lajbel in #593
- feat: css colors by @lajbel in #592
- Move normalization to shader by @mflerackers in #600
- chore(deps-dev): bump vitest from 2.1.3 to 2.1.9 by @dependabot in #604
- doc: clarify meaning of ignoreSides in platformEffector by @dragoncoder047 in #601
- fix: Update platformEffector.js for tag methods by @dragoncoder047 in #598
- doc: change logo by @lajbel in #605
- Moves the camera to the shader by @mflerackers in #607
New Contributors
- @marianyp made their first contribution in #582
- @chqs-git made their first contribution in #581
- @remarkablemark made their first contribution in #594
Full Changelog: 4000.0.0-alpha.15...4000.0.0-alpha.16
3001.0.9
3001.0.8
Hey! lajbel here, a little fix for a big bug!
[3001.0.8] - 2025-01-15
Fixed
- Fixed a bug where alpha channel wasn't correctly setted - @mflerackers
3001.0.7
Hey! lajbel here 😄
We're publishing this little version with some bug fixes related to font atlases and a new feature that probably much of you, shader users, will find useful! I left you with the changelog, thank you for support KAPLAY ❤️
[3001.0.7] - 2025-01-15
Added
-
Added
kaplay({ spriteAtlasPadding })
for setting the space between the
sprites in the sprite atlas - @marianypkaplay({ spriteAtlasPadding: 10, // 10 pixels of space between each sprite });
Changed
- Now you cannot pass parameters that are not a component or string to
.use()
.
Otherwise it will throw an error - @lajbel
Fixed
- Fixed a bug where font atlas were working strange - @mflerackers
v3001.0.6
Hey! New release in these holiday dates 🎅🏻
This update comes with some update in texts and finally adding the global trigger! I left you the changelog. Thanks for staying up with KAPLAY! And merry xmas!
[3001.0.6] "Santa Events" - 2024-12-27
Added
-
Added
trigger(event, tag, ...args)
for global triggering events on a
specific tag (experimental) - @lajbeltrigger("shoot", "target", 140); on("shoot", "target", (obj, score) => { obj.destroy(); debug.log(140); // every bomb was 140 score points! });
-
Added
{ override?: true }
inCharTransform
for overridding text styles -
@dragoncoder047add([ pos(100, 150), text("With override: Hello [foo]styled[/foo] text", { transform: { color: BLACK, // Default text color for every character }, styles: { foo: { color: RED, // [foo] will be red override: true, // will override the black def color }, }, }), ]);
-
Added
{ indentAll?: boolean }
inTextCompOpt
to indent every new line -
@dragoncoder047 -
Added TypeScript definition for all App Events and missing Game Object
Events - @lajbel
Fixed
- Fixed an incorrect mention to the component in
TextInputComp
type -
@dragoncoder047