pxt-common-packages 9.3.11 → 9.4.2

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.
Files changed (58) hide show
  1. package/built/common-sim.d.ts +2 -0
  2. package/built/common-sim.js +38 -0
  3. package/libs/azureiot/built/debug/binary.js +469 -464
  4. package/libs/color/built/debug/binary.js +8 -8
  5. package/libs/color-sensor/built/debug/binary.js +8 -8
  6. package/libs/controller/built/debug/binary.js +7126 -6975
  7. package/libs/controller---none/built/debug/binary.js +7105 -6954
  8. package/libs/core---esp32/pins.cpp +30 -4
  9. package/libs/core---esp32/shims.d.ts +15 -0
  10. package/libs/core---esp32s2/shims.d.ts +15 -0
  11. package/libs/datalogger/built/debug/binary.js +63 -63
  12. package/libs/edge-connector/built/debug/binary.js +8 -8
  13. package/libs/esp32/built/debug/binary.js +470 -465
  14. package/libs/game/_locales/game-jsdoc-strings.json +10 -1
  15. package/libs/game/_locales/game-strings.json +18 -2
  16. package/libs/game/assetTemplates.ts +2 -0
  17. package/libs/game/built/debug/binary.js +7018 -6867
  18. package/libs/game/docs/reference/scene/get-tile-location.md +96 -0
  19. package/libs/game/docs/reference/scene/get-tiles-by-type.md +64 -43
  20. package/libs/game/docs/reference/scene/is-hitting-tile.md +87 -0
  21. package/libs/game/docs/reference/scene/on-hit-wall.md +88 -0
  22. package/libs/game/docs/reference/scene/on-overlap-tile.md +88 -0
  23. package/libs/game/docs/reference/scene/place-on-random-tile.md +95 -41
  24. package/libs/game/docs/reference/scene/place-on-tile.md +88 -0
  25. package/libs/game/docs/reference/scene/set-tile-at.md +45 -41
  26. package/libs/game/docs/reference/scene/set-wall-at.md +86 -0
  27. package/libs/game/docs/reference/scene/tile-at-location-equals.md +97 -0
  28. package/libs/game/docs/reference/scene/tile-kind-at.md +118 -0
  29. package/libs/game/docs/reference/scene.md +18 -16
  30. package/libs/game/physics.ts +1 -1
  31. package/libs/game/scenes.ts +5 -1
  32. package/libs/game/sprite.ts +23 -6
  33. package/libs/game/spriteevents.ts +7 -7
  34. package/libs/game/sprites.ts +16 -0
  35. package/libs/game/tilemap.ts +172 -26
  36. package/libs/lcd/built/debug/binary.js +8 -8
  37. package/libs/light-spectrum-sensor/built/debug/binary.js +8 -8
  38. package/libs/lora/built/debug/binary.js +8 -8
  39. package/libs/matrix-keypad/built/debug/binary.js +8 -8
  40. package/libs/mqtt/built/debug/binary.js +176 -176
  41. package/libs/net/built/debug/binary.js +176 -176
  42. package/libs/net/controller.ts +15 -1
  43. package/libs/net-game/built/debug/binary.js +8896 -8680
  44. package/libs/palette/built/debug/binary.js +7017 -6866
  45. package/libs/pixel/built/debug/binary.js +8 -8
  46. package/libs/power/built/debug/binary.js +8 -8
  47. package/libs/proximity/built/debug/binary.js +8 -8
  48. package/libs/radio/built/debug/binary.js +8 -8
  49. package/libs/radio-broadcast/built/debug/binary.js +8 -8
  50. package/libs/rotary-encoder/built/debug/binary.js +8 -8
  51. package/libs/screen/_locales/screen-jsdoc-strings.json +1 -0
  52. package/libs/screen/built/debug/binary.js +50 -50
  53. package/libs/screen/image.cpp +45 -0
  54. package/libs/screen/image.ts +26 -0
  55. package/libs/screen/sim/image.ts +42 -0
  56. package/libs/servo/built/debug/binary.js +8 -8
  57. package/libs/storyboard/built/debug/binary.js +7017 -6866
  58. package/package.json +1 -1
@@ -1007,6 +1007,8 @@ declare namespace pxsim.ImageMethods {
1007
1007
  function _fillCircle(img: RefImage, cxy: number, r: number, c: number): void;
1008
1008
  function _blitRow(img: RefImage, xy: number, from: RefImage, xh: number): void;
1009
1009
  function blitRow(img: RefImage, x: number, y: number, from: RefImage, fromX: number, fromH: number): void;
1010
+ function _blit(img: RefImage, src: RefImage, args: RefCollection): void;
1011
+ function blit(dst: RefImage, src: RefImage, args: RefCollection): void;
1010
1012
  }
1011
1013
  declare namespace pxsim.image {
1012
1014
  function byteHeight(h: number, bpp: number): number;
@@ -3904,6 +3904,44 @@ var pxsim;
3904
3904
  }
3905
3905
  }
3906
3906
  ImageMethods.blitRow = blitRow;
3907
+ function _blit(img, src, args) {
3908
+ blit(img, src, args);
3909
+ }
3910
+ ImageMethods._blit = _blit;
3911
+ function blit(dst, src, args) {
3912
+ const xDst = args.getAt(0);
3913
+ const yDst = args.getAt(1);
3914
+ const wDst = args.getAt(2);
3915
+ const hDst = args.getAt(3);
3916
+ const xSrc = args.getAt(4);
3917
+ const ySrc = args.getAt(5);
3918
+ const wSrc = args.getAt(6);
3919
+ const hSrc = args.getAt(7);
3920
+ const transparent = args.getAt(8);
3921
+ const xSrcStep = ((wSrc << 16) / wDst) | 0;
3922
+ const ySrcStep = ((hSrc << 16) / hDst) | 0;
3923
+ const xDstClip = Math.abs(Math.min(0, xDst));
3924
+ const yDstClip = Math.abs(Math.min(0, yDst));
3925
+ const xDstStart = xDst + xDstClip;
3926
+ const yDstStart = yDst + yDstClip;
3927
+ const xDstEnd = Math.min(dst._width, xDst + wDst);
3928
+ const yDstEnd = Math.min(dst._height, yDst + hDst);
3929
+ const xSrcStart = Math.max(0, (xSrc << 16) + xDstClip * xSrcStep);
3930
+ const ySrcStart = Math.max(0, (ySrc << 16) + yDstClip * ySrcStep);
3931
+ const xSrcEnd = Math.min(src._width, xSrc + wSrc) << 16;
3932
+ const ySrcEnd = Math.min(src._height, ySrc + hSrc) << 16;
3933
+ for (let yDstCur = yDstStart, ySrcCur = ySrcStart; yDstCur < yDstEnd && ySrcCur < ySrcEnd; ++yDstCur, ySrcCur += ySrcStep) {
3934
+ const ySrcCurI = ySrcCur >> 16;
3935
+ for (let xDstCur = xDstStart, xSrcCur = xSrcStart; xDstCur < xDstEnd && xSrcCur < xSrcEnd; ++xDstCur, xSrcCur += xSrcStep) {
3936
+ const xSrcCurI = xSrcCur >> 16;
3937
+ const cSrc = getPixel(src, xSrcCurI, ySrcCurI);
3938
+ if (!transparent || cSrc) {
3939
+ setPixel(dst, xDstCur, yDstCur, cSrc);
3940
+ }
3941
+ }
3942
+ }
3943
+ }
3944
+ ImageMethods.blit = blit;
3907
3945
  })(ImageMethods = pxsim.ImageMethods || (pxsim.ImageMethods = {}));
3908
3946
  })(pxsim || (pxsim = {}));
3909
3947
  (function (pxsim) {