pxt-common-packages 10.3.4 → 10.3.5

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 (35) hide show
  1. package/built/common-sim.d.ts +12 -0
  2. package/built/common-sim.js +24 -0
  3. package/libs/azureiot/built/debug/binary.js +461 -461
  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 +6980 -6980
  7. package/libs/controller---none/built/debug/binary.js +6960 -6960
  8. package/libs/datalogger/built/debug/binary.js +63 -63
  9. package/libs/edge-connector/built/debug/binary.js +8 -8
  10. package/libs/esp32/built/debug/binary.js +462 -462
  11. package/libs/game/built/debug/binary.js +6895 -6895
  12. package/libs/game/multiplayer.cpp +3 -0
  13. package/libs/game/multiplayer.ts +45 -0
  14. package/libs/game/sim/multiplayer.ts +32 -0
  15. package/libs/lcd/built/debug/binary.js +8 -8
  16. package/libs/light-spectrum-sensor/built/debug/binary.js +8 -8
  17. package/libs/lora/built/debug/binary.js +8 -8
  18. package/libs/matrix-keypad/built/debug/binary.js +8 -8
  19. package/libs/mqtt/built/debug/binary.js +176 -176
  20. package/libs/multiplayer/fieldEditors.ts +1 -1
  21. package/libs/multiplayer/mp.ts +44 -26
  22. package/libs/net/built/debug/binary.js +176 -176
  23. package/libs/net-game/built/debug/binary.js +8488 -8488
  24. package/libs/palette/built/debug/binary.js +6898 -6898
  25. package/libs/pixel/built/debug/binary.js +8 -8
  26. package/libs/power/built/debug/binary.js +8 -8
  27. package/libs/proximity/built/debug/binary.js +8 -8
  28. package/libs/radio/built/debug/binary.js +8 -8
  29. package/libs/radio-broadcast/built/debug/binary.js +8 -8
  30. package/libs/rotary-encoder/built/debug/binary.js +8 -8
  31. package/libs/screen/built/debug/binary.js +50 -50
  32. package/libs/servo/built/debug/binary.js +8 -8
  33. package/libs/sprite-scaling/built/debug/binary.js +6898 -6898
  34. package/libs/storyboard/built/debug/binary.js +6898 -6898
  35. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- namespace mp {
1
+ namespace multiplayer {
2
2
  /**
3
3
  * A type of state to get for a player
4
4
  */
@@ -1,4 +1,4 @@
1
- namespace sprites.multiplayer {
1
+ namespace sprites.mp {
2
2
  //% blockId=mp_setPlayerSprite
3
3
  //% block="set $player sprite to $sprite=variables_get(mySprite)"
4
4
  //% player.shadow=mp_playernumber
@@ -7,7 +7,25 @@ namespace sprites.multiplayer {
7
7
  //% group="Multiplayer"
8
8
  //% parts="multiplayer"
9
9
  export function setPlayerSprite(player: number, sprite: Sprite) {
10
- mp._state().setPlayerSprite(player, sprite);
10
+ if (sprite && sprite.image) {
11
+ // Passing 'implicit' flag so we don't override icons that
12
+ // user has explicitly defined.
13
+ multiplayer.postPresenceIcon(
14
+ player,
15
+ sprite.image,
16
+ /** implicit **/ true
17
+ );
18
+ } else {
19
+ // Passing 'implicit' flag so we don't override icons that
20
+ // user has explicitly defined.
21
+ multiplayer.postPresenceIcon(
22
+ player,
23
+ undefined,
24
+ /** implicit **/ true
25
+ );
26
+
27
+ }
28
+ multiplayer._state().setPlayerSprite(player, sprite);
11
29
  }
12
30
 
13
31
  //% blockId=mp_getPlayerSprite
@@ -18,7 +36,7 @@ namespace sprites.multiplayer {
18
36
  //% group="Multiplayer"
19
37
  //% parts="multiplayer"
20
38
  export function getPlayerSprite(player: number): Sprite {
21
- return mp._state().getPlayerSprite(player);
39
+ return multiplayer._state().getPlayerSprite(player);
22
40
  }
23
41
 
24
42
  //% blockId=mp_isPlayerSprite
@@ -34,7 +52,7 @@ namespace sprites.multiplayer {
34
52
  }
35
53
  }
36
54
 
37
- namespace controller.multiplayer {
55
+ namespace controller.mp {
38
56
  //% blockId=mp_moveWithButtons
39
57
  //% block="$player move $sprite with buttons||vx $vx vy $vy"
40
58
  //% player.shadow=mp_playernumber
@@ -55,7 +73,7 @@ namespace controller.multiplayer {
55
73
  vx?: number,
56
74
  vy?: number
57
75
  ) {
58
- mp.getController(player).moveSprite(sprite, vx, vy);
76
+ multiplayer.getController(player).moveSprite(sprite, vx, vy);
59
77
  }
60
78
 
61
79
  //% blockId=mp_onButtonEvent
@@ -65,11 +83,11 @@ namespace controller.multiplayer {
65
83
  //% parts="multiplayer"
66
84
  //% weight=90
67
85
  export function onButtonEvent(
68
- button: mp.MultiplayerButton,
86
+ button: multiplayer.MultiplayerButton,
69
87
  event: ControllerButtonEvent,
70
88
  handler: (player: number) => void
71
89
  ) {
72
- mp._state().onButtonEvent(button, event, handler);
90
+ multiplayer._state().onButtonEvent(button, event, handler);
73
91
  }
74
92
 
75
93
  //% blockId=mp_isButtonPressed
@@ -81,13 +99,13 @@ namespace controller.multiplayer {
81
99
  //% blockGap=8
82
100
  export function isButtonPressed(
83
101
  player: number,
84
- button: mp.MultiplayerButton
102
+ button: multiplayer.MultiplayerButton
85
103
  ): boolean {
86
- return mp.getButton(mp.getController(player), button).isPressed();
104
+ return multiplayer.getButton(multiplayer.getController(player), button).isPressed();
87
105
  }
88
106
  }
89
107
 
90
- namespace info.multiplayer {
108
+ namespace info.mp {
91
109
  //% blockId=mp_getPlayerState
92
110
  //% block="$player $state"
93
111
  //% player.shadow=mp_playernumber
@@ -98,12 +116,12 @@ namespace info.multiplayer {
98
116
  //% blockGap=8
99
117
  export function getPlayerState(player: number, state: number): number {
100
118
  if (state === MultiplayerState.Score) {
101
- return mp.getInfo(player).score();
119
+ return multiplayer.getInfo(player).score();
102
120
  } else if (state === MultiplayerState.Lives) {
103
- return mp.getInfo(player).life();
121
+ return multiplayer.getInfo(player).life();
104
122
  }
105
123
 
106
- return mp._state().getPlayerState(player, state);
124
+ return multiplayer._state().getPlayerState(player, state);
107
125
  }
108
126
 
109
127
  //% blockId=mp_setPlayerState
@@ -120,12 +138,12 @@ namespace info.multiplayer {
120
138
  value: number
121
139
  ) {
122
140
  if (state === MultiplayerState.Score) {
123
- return mp.getInfo(player).setScore(value);
141
+ return multiplayer.getInfo(player).setScore(value);
124
142
  } else if (state === MultiplayerState.Lives) {
125
- return mp.getInfo(player).setLife(value);
143
+ return multiplayer.getInfo(player).setLife(value);
126
144
  }
127
145
 
128
- mp._state().setPlayerState(player, state, value);
146
+ multiplayer._state().setPlayerState(player, state, value);
129
147
  }
130
148
 
131
149
  //% blockId=mp_changePlayerStateBy
@@ -157,7 +175,7 @@ namespace info.multiplayer {
157
175
  //% weight=70
158
176
  //% blockGap=8
159
177
  export function onScore(score: number, handler: (player: number) => void) {
160
- mp._state().onReachedScore(score, handler);
178
+ multiplayer._state().onReachedScore(score, handler);
161
179
  }
162
180
 
163
181
  //% blockId=mp_onLifeZero
@@ -167,14 +185,14 @@ namespace info.multiplayer {
167
185
  //% parts="multiplayer"
168
186
  //% weight=60
169
187
  export function onLifeZero(handler: (player: number) => void) {
170
- mp._state().onLifeZero(handler);
188
+ multiplayer._state().onLifeZero(handler);
171
189
  }
172
190
  }
173
191
 
174
192
  //% icon="\uf0c0"
175
193
  //% block="Multiplayer"
176
194
  //% color="#207a77"
177
- namespace mp {
195
+ namespace multiplayer {
178
196
  export enum PlayerNumber {
179
197
  //% block="1"
180
198
  One = 1,
@@ -209,7 +227,7 @@ namespace mp {
209
227
  //% parts="multiplayer"
210
228
  //% weight=100
211
229
  export function setPlayerIndicatorsVisible(visible: boolean) {
212
- mp._state().setPlayerIndicatorsVisible(visible);
230
+ multiplayer._state().setPlayerIndicatorsVisible(visible);
213
231
  }
214
232
 
215
233
  //% blockId=mp_isPlayer
@@ -309,7 +327,7 @@ namespace mp {
309
327
 
310
328
  class ButtonHandler {
311
329
  constructor(
312
- public button: mp.MultiplayerButton,
330
+ public button: multiplayer.MultiplayerButton,
313
331
  public event: ControllerButtonEvent,
314
332
  public handler: (player: number) => void
315
333
  ) {}
@@ -385,7 +403,7 @@ namespace mp {
385
403
  }
386
404
 
387
405
  onButtonEvent(
388
- button: mp.MultiplayerButton,
406
+ button: multiplayer.MultiplayerButton,
389
407
  event: ControllerButtonEvent,
390
408
  handler: (playerNumber: number) => void
391
409
  ) {
@@ -399,7 +417,7 @@ namespace mp {
399
417
  this.buttonHandlers.push(new ButtonHandler(button, event, handler));
400
418
 
401
419
  const registerHandler = (p: number) => {
402
- mp.getButton(mp.getController(p), button).onEvent(event, () => {
420
+ multiplayer.getButton(multiplayer.getController(p), button).onEvent(event, () => {
403
421
  this.getButtonHandler(button, event).handler(p);
404
422
  });
405
423
  };
@@ -420,7 +438,7 @@ namespace mp {
420
438
  this.scoreHandlers.push(new ScoreHandler(score, handler));
421
439
 
422
440
  const registerHandler = (p: number) => {
423
- mp.getInfo(p).onScore(score, () => {
441
+ multiplayer.getInfo(p).onScore(score, () => {
424
442
  this.getScoreHandler(score).handler(p);
425
443
  });
426
444
  };
@@ -433,7 +451,7 @@ namespace mp {
433
451
  onLifeZero(handler: (playerNumber: number) => void) {
434
452
  if (!this.lifeZeroHandler) {
435
453
  const registerHandler = (p: number) => {
436
- mp.getInfo(p).onLifeZero(() => {
454
+ multiplayer.getInfo(p).onLifeZero(() => {
437
455
  this.lifeZeroHandler(p);
438
456
  });
439
457
  };
@@ -496,7 +514,7 @@ namespace mp {
496
514
  }
497
515
 
498
516
  protected getButtonHandler(
499
- button: mp.MultiplayerButton,
517
+ button: multiplayer.MultiplayerButton,
500
518
  event: ControllerButtonEvent
501
519
  ) {
502
520
  for (const bHandler of this.buttonHandlers) {