pxt-arcade 1.13.1 → 1.13.3

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 (62) hide show
  1. package/built/common-sim.js +5 -5
  2. package/built/sim.js +13 -5
  3. package/built/target.js +507 -289
  4. package/built/target.json +507 -289
  5. package/built/targetlight.json +5 -5
  6. package/docs/beta-ref.json +1 -1
  7. package/docs/hardware/kiosk.md +44 -77
  8. package/docs/hero-banner.md +9 -8
  9. package/docs/index-ref.json +1 -1
  10. package/docs/kiosk.html +31 -3
  11. package/docs/multiplayer-games.md +6 -0
  12. package/docs/multiplayer.md +0 -3
  13. package/docs/projects.md +2 -1
  14. package/docs/skillmap/balloon/balloon1.md +3 -16
  15. package/docs/skillmap/balloon/balloon2.md +3 -15
  16. package/docs/skillmap/balloon/balloon3.md +3 -16
  17. package/docs/skillmap/balloon/balloon4.md +18 -17
  18. package/docs/skillmap/mole/mole1.md +15 -114
  19. package/docs/skillmap/mole/mole2.md +28 -105
  20. package/docs/skillmap/mole/mole3.md +9 -105
  21. package/docs/skillmap/mole/mole4.md +37 -125
  22. package/docs/stable-ref.json +1 -1
  23. package/docs/static/hardware/kiosk/hot-air-balloon.png +0 -0
  24. package/docs/static/hardware/kiosk/makecode-arcade-machines.jpg +0 -0
  25. package/docs/static/hardware/kiosk/no-uploaded-games.png +0 -0
  26. package/docs/static/hardware/kiosk/select-a-game.png +0 -0
  27. package/docs/static/hardware/kiosk/share-button.png +0 -0
  28. package/docs/static/hardware/kiosk/share-kiosk-button.png +0 -0
  29. package/docs/static/hardware/kiosk/share-kiosk-code.png +0 -0
  30. package/docs/static/hardware/kiosk/share-project.png +0 -0
  31. package/docs/static/hardware/kiosk/single-uploaded-game.png +0 -0
  32. package/docs/static/kiosk/asset-manifest.json +3 -3
  33. package/docs/static/kiosk/static/js/{main.3ab95ea3.js → main.f94a16a2.js} +3 -3
  34. package/docs/static/kiosk/static/js/{main.3ab95ea3.js.LICENSE.txt → main.f94a16a2.js.LICENSE.txt} +0 -0
  35. package/docs/static/kiosk/static/js/{main.3ab95ea3.js.map → main.f94a16a2.js.map} +1 -1
  36. package/docs/test/skillmap/balloon/balloon1.md +245 -0
  37. package/docs/test/skillmap/balloon/balloon2.md +365 -0
  38. package/docs/test/skillmap/balloon/balloon3.md +374 -0
  39. package/docs/test/skillmap/balloon/balloon4.md +389 -0
  40. package/docs/test/skillmap/dino/dino1.md +3 -3
  41. package/docs/test/skillmap/dino/dino2.md +9 -9
  42. package/docs/test/skillmap/mole/mole1.md +296 -0
  43. package/docs/test/skillmap/mole/mole2.md +345 -0
  44. package/docs/test/skillmap/mole/mole3.md +288 -0
  45. package/docs/test/skillmap/mole/mole4.md +431 -0
  46. package/docs/test/tutorials/arrow.md +71 -66
  47. package/docs/test/tutorials/collect-clovers.md +662 -891
  48. package/docs/test/tutorials/holiday.md +133 -192
  49. package/docs/test/tutorials/horse.md +227 -225
  50. package/docs/test/tutorials/time-flies.md +198 -117
  51. package/docs/tutorials/collect-the-clovers.md +662 -891
  52. package/docs/tutorials/froggy.md +198 -117
  53. package/package.json +4 -4
  54. package/docs/static/hardware/kiosk/add-to-kiosk.png +0 -0
  55. package/docs/static/hardware/kiosk/add-your-game.png +0 -0
  56. package/docs/static/hardware/kiosk/keyboard-controls.png +0 -0
  57. package/docs/static/hardware/kiosk/locked-state.png +0 -0
  58. package/docs/static/hardware/kiosk/menu-bar.png +0 -0
  59. package/docs/static/hardware/kiosk/multiple-uploaded-games.png +0 -0
  60. package/docs/static/hardware/kiosk/qr-code-enlarged.png +0 -0
  61. package/docs/static/hardware/kiosk/shared-project-link.png +0 -0
  62. package/docs/static/hardware/kiosk/shared-project-name.png +0 -0
@@ -64,10 +64,10 @@ scene.setBackgroundImage(assets.image`background`)
64
64
  - :suitcase: Open the ``||bundles:Bundles||`` category and drag the
65
65
  ```block
66
66
  bundles.wrap1(function () {
67
- let player_1 = sprites.create(img`.`, SpriteKind.Player1)
68
- mp.moveWithButtons(mp.PlayerNumber.One, player_1, 0, 150)
69
- player_1.setStayInScreen(true)
70
- player_1.left = 15
67
+ mp.setPlayerSprite(mp.playerSelector(mp.PlayerNumber.One), sprites.create(img`.`, SpriteKind.Player))
68
+ mp.moveWithButtons(mp.playerSelector(mp.PlayerNumber.One), 0, 150)
69
+ mp.getPlayerSprite(mp.playerSelector(mp.PlayerNumber.One)).setStayInScreen(true)
70
+ mp.getPlayerSprite(mp.playerSelector(mp.PlayerNumber.One)).left = 15
71
71
  })
72
72
  ```
73
73
  bundle into **the end** of the<br/>
@@ -82,10 +82,14 @@ container already in the workspace.
82
82
  scene.setBackgroundImage(assets.image`background`)
83
83
  //@highlight
84
84
  bundles.wrap1(function () {
85
- let player_1 = sprites.create(img`.`, SpriteKind.Player1)
86
- mp.moveWithButtons(mp.PlayerNumber.One, player_1, 0, 150)
87
- player_1.setStayInScreen(true)
88
- player_1.left = 15
85
+ //@highlight
86
+ mp.setPlayerSprite(mp.playerSelector(mp.PlayerNumber.One), sprites.create(img`.`, SpriteKind.Player))
87
+ //@highlight
88
+ mp.moveWithButtons(mp.playerSelector(mp.PlayerNumber.One), 0, 150)
89
+ //@highlight
90
+ mp.getPlayerSprite(mp.playerSelector(mp.PlayerNumber.One)).setStayInScreen(true)
91
+ //@highlight
92
+ mp.getPlayerSprite(mp.playerSelector(mp.PlayerNumber.One)).left = 15
89
93
  })
90
94
  ```
91
95
 
@@ -95,7 +99,7 @@ bundles.wrap1(function () {
95
99
  ## {5. Set player 1}
96
100
 
97
101
  - :mouse pointer: Click the empty grey square inside the <br/>
98
- ``||variables(noclick):set player 1||`` <br/>
102
+ ``||mp(noclick):set player 1||`` <br/>
99
103
  block and switch to the **My Assets** library.<br/>
100
104
  ![Switch to My Assets](/static/skillmap/assets/my-assets-three.png " ")
101
105
  Choose the red/orange box called **p1**.
@@ -107,12 +111,14 @@ Choose the red/orange box called **p1**.
107
111
 
108
112
  ```blocks
109
113
  scene.setBackgroundImage(assets.image`background`)
110
- //@highlight
114
+
111
115
  bundles.wrap1(function () {
112
- let player_1 = sprites.create(assets.image`p1`, SpriteKind.Player1)
113
- mp.moveWithButtons(mp.PlayerNumber.One, player_1, 0, 150)
114
- player_1.setStayInScreen(true)
115
- player_1.left = 15
116
+ //@highlight
117
+ mp.setPlayerSprite(mp.playerSelector(mp.PlayerNumber.One), sprites.create(assets.image`p1`, SpriteKind.Player))
118
+ mp.moveWithButtons(mp.playerSelector(mp.PlayerNumber.One), 0, 150)
119
+ mp.getPlayerSprite(mp.playerSelector(mp.PlayerNumber.One)).setStayInScreen(true)
120
+ mp.getPlayerSprite(mp.playerSelector(mp.PlayerNumber.One)).left = 15
121
+
116
122
  })
117
123
  ```
118
124
 
@@ -153,14 +159,14 @@ This block sets the background of the game window to the image that you chose.
153
159
 
154
160
  - :paper plane: ---
155
161
  ```block
156
- let player_1 = sprites.create(assets.image`p1`, SpriteKind.Player1)
162
+ mp.setPlayerSprite(mp.playerSelector(mp.PlayerNumber.One), sprites.create(assets.image`p1`, SpriteKind.Player))
157
163
  ```
158
164
  This block creates a **sprite** named "player_1" and sets its **kind** to "Player1". It also assigns it the image of a red box.
159
165
 
160
166
 
161
167
  - :users: ---
162
168
  ```block
163
- mp.moveWithButtons(mp.PlayerNumber.One, player_1, 0, 150)
169
+ mp.moveWithButtons(mp.playerSelector(mp.PlayerNumber.One), 0, 150)
164
170
  ```
165
171
  This block allows the first player to move the sprite called "player_1" with the arrow keys. The value of **vx** is set to **0** so that the buttons don't allow the user to move the box from side to side.
166
172
 
@@ -168,16 +174,14 @@ This block allows the first player to move the sprite called "player_1" with the
168
174
 
169
175
  - :paper plane: ---
170
176
  ```block
171
- let player_1: Sprite = null
172
- player_1.setStayInScreen(true)
177
+ mp.getPlayerSprite(mp.playerSelector(mp.PlayerNumber.One)).setStayInScreen(true)
173
178
  ```
174
179
  This block makes sure that the "player_1" sprite doesn't leave the screen when the buttons are pressed for too long.
175
180
 
176
181
 
177
182
  - :paper plane: ---
178
183
  ```block
179
- let player_1: Sprite = null
180
- player_1.left = 15
184
+ mp.getPlayerSprite(mp.playerSelector(mp.PlayerNumber.One)).left = 15
181
185
  ```
182
186
  This block sets the leftmost pixels of the "player_1" sprite to be 15 pixels away from the left edge of the screen.
183
187
 
@@ -192,10 +196,10 @@ This block sets the leftmost pixels of the "player_1" sprite to be 15 pixels awa
192
196
  - :suitcase: Open the ``||bundles:Bundles||`` category and drag the
193
197
  ```block
194
198
  bundles.wrap2(function () {
195
- let player_2 = sprites.create(img`.`, SpriteKind.Player2)
196
- mp.moveWithButtons(mp.PlayerNumber.Two, player_2, 0, 150)
197
- player_2.setStayInScreen(true)
198
- player_2.right = 145
199
+ mp.setPlayerSprite(mp.playerSelector(mp.PlayerNumber.Two), sprites.create(img`.`, SpriteKind.Player))
200
+ mp.moveWithButtons(mp.playerSelector(mp.PlayerNumber.Two), 0, 150)
201
+ mp.getPlayerSprite(mp.playerSelector(mp.PlayerNumber.Two)).setStayInScreen(true)
202
+ mp.getPlayerSprite(mp.playerSelector(mp.PlayerNumber.Two)).right = 145
199
203
  })
200
204
  ```
201
205
  bundle into **the end** of the<br/>
@@ -204,7 +208,7 @@ container already in the workspace.
204
208
 
205
209
 
206
210
  - :mouse pointer: Click the empty grey square inside the <br/>
207
- ``||variables(noclick):set player 2||`` <br/>
211
+ ``||mp(noclick):set player 2||`` <br/>
208
212
  block and switch to the **My Assets** library.<br/>
209
213
  ![Switch to My Assets](/static/skillmap/assets/my-assets-three.png " ")
210
214
  Choose the blue box called **p2**.
@@ -219,21 +223,23 @@ Choose the blue box called **p2**.
219
223
  scene.setBackgroundImage(assets.image`background`)
220
224
 
221
225
  bundles.wrap1(function () {
222
- let player_1 = sprites.create(assets.image`p1`, SpriteKind.Player1)
223
- mp.moveWithButtons(mp.PlayerNumber.One, player_1, 0, 150)
224
- player_1.setStayInScreen(true)
225
- player_1.left = 15
226
+ mp.setPlayerSprite(mp.playerSelector(mp.PlayerNumber.One), sprites.create(assets.image`p1`, SpriteKind.Player))
227
+ mp.moveWithButtons(mp.playerSelector(mp.PlayerNumber.One), 0, 150)
228
+ mp.getPlayerSprite(mp.playerSelector(mp.PlayerNumber.One)).setStayInScreen(true)
229
+ mp.getPlayerSprite(mp.playerSelector(mp.PlayerNumber.One)).left = 15
230
+
226
231
  })
232
+
227
233
  //@highlight
228
234
  bundles.wrap2(function () {
229
- //@highlight
230
- let player_2 = sprites.create(assets.image`p2`, SpriteKind.Player2)
231
- //@highlight
232
- mp.moveWithButtons(mp.PlayerNumber.Two, player_2, 0, 150)
233
- //@highlight
234
- player_2.setStayInScreen(true)
235
- //@highlight
236
- player_2.right = 145
235
+ //@highlight
236
+ mp.setPlayerSprite(mp.playerSelector(mp.PlayerNumber.Two), sprites.create(assets.image`p2`, SpriteKind.Player))
237
+ //@highlight
238
+ mp.moveWithButtons(mp.playerSelector(mp.PlayerNumber.Two), 0, 150)
239
+ //@highlight
240
+ mp.getPlayerSprite(mp.playerSelector(mp.PlayerNumber.Two)).setStayInScreen(true)
241
+ //@highlight
242
+ mp.getPlayerSprite(mp.playerSelector(mp.PlayerNumber.Two)).right = 145
237
243
  })
238
244
  ```
239
245
 
@@ -262,11 +268,6 @@ block into **the end** of the<br/>
262
268
  ``||loops(noclick): on start||`` <br/>
263
269
  container already in the workspace.
264
270
 
265
- ```validation.local
266
- # BlocksExistValidator
267
- * enabled: false
268
- ```
269
-
270
271
 
271
272
  #### ~ tutorialhint
272
273
 
@@ -275,16 +276,18 @@ container already in the workspace.
275
276
  scene.setBackgroundImage(assets.image`background`)
276
277
 
277
278
  bundles.wrap1(function () {
278
- let player_1 = sprites.create(assets.image`p1`, SpriteKind.Player1)
279
- mp.moveWithButtons(mp.PlayerNumber.One, player_1, 0, 150)
280
- player_1.setStayInScreen(true)
281
- player_1.left = 15
279
+ mp.setPlayerSprite(mp.playerSelector(mp.PlayerNumber.One), sprites.create(assets.image`p1`, SpriteKind.Player))
280
+ mp.moveWithButtons(mp.playerSelector(mp.PlayerNumber.One), 0, 150)
281
+ mp.getPlayerSprite(mp.playerSelector(mp.PlayerNumber.One)).setStayInScreen(true)
282
+ mp.getPlayerSprite(mp.playerSelector(mp.PlayerNumber.One)).left = 15
283
+
282
284
  })
285
+
283
286
  bundles.wrap2(function () {
284
- let player_2 = sprites.create(assets.image`p2`, SpriteKind.Player2)
285
- mp.moveWithButtons(mp.PlayerNumber.Two, player_2, 0, 150)
286
- player_2.setStayInScreen(true)
287
- player_2.right = 145
287
+ mp.setPlayerSprite(mp.playerSelector(mp.PlayerNumber.Two), sprites.create(assets.image`p2`, SpriteKind.Player))
288
+ mp.moveWithButtons(mp.playerSelector(mp.PlayerNumber.Two), 0, 150)
289
+ mp.getPlayerSprite(mp.playerSelector(mp.PlayerNumber.Two)).setStayInScreen(true)
290
+ mp.getPlayerSprite(mp.playerSelector(mp.PlayerNumber.Two)).right = 145
288
291
  })
289
292
 
290
293
  //@highlight
@@ -302,10 +305,10 @@ Let's add an overlap event to detect when the first player catches a bow.
302
305
 
303
306
  - :paper plane: Open the ``||sprites:Sprites||`` category and drag the
304
307
  ```block
305
- sprites.onOverlap(SpriteKind.Player1, SpriteKind.Bow, function (sprite, otherSprite) {
306
- otherSprite.destroy(effects.confetti, 200)
307
- mp.changePlayerStateBy(mp.PlayerNumber.One, MultiplayerState.Score, 1)
308
- sprites.launchBow()
308
+ sprites.onOverlap(SpriteKind.Player, SpriteKind.Bow, function (sprite, otherSprite) {
309
+ otherSprite.destroy(effects.confetti, 200)
310
+ mp.changePlayerStateBy(mp.getPlayerBySprite(sprite), MultiplayerState.score, 1)
311
+ sprites.launchBow()
309
312
  })
310
313
  ```
311
314
  bundle into **an empty area** of the workspace.
@@ -322,89 +325,37 @@ Now, every time a bow overlaps with player 1, the bow will disappear in a burst
322
325
  scene.setBackgroundImage(assets.image`background`)
323
326
 
324
327
  bundles.wrap1(function () {
325
- let player_1 = sprites.create(assets.image`p1`, SpriteKind.Player1)
326
- mp.moveWithButtons(mp.PlayerNumber.One, player_1, 0, 150)
327
- player_1.setStayInScreen(true)
328
- player_1.left = 15
329
- })
330
-
331
- bundles.wrap2(function () {
332
- let player_2 = sprites.create(assets.image`p2`, SpriteKind.Player2)
333
- mp.moveWithButtons(mp.PlayerNumber.Two, player_2, 0, 150)
334
- player_2.setStayInScreen(true)
335
- player_2.right = 145
336
- })
328
+ mp.setPlayerSprite(mp.playerSelector(mp.PlayerNumber.One), sprites.create(assets.image`p1`, SpriteKind.Player))
329
+ mp.moveWithButtons(mp.playerSelector(mp.PlayerNumber.One), 0, 150)
330
+ mp.getPlayerSprite(mp.playerSelector(mp.PlayerNumber.One)).setStayInScreen(true)
331
+ mp.getPlayerSprite(mp.playerSelector(mp.PlayerNumber.One)).left = 15
337
332
 
338
- //@highlight
339
- sprites.onOverlap(SpriteKind.Player1, SpriteKind.Bow, function (sprite, otherSprite) {
340
- otherSprite.destroy(effects.confetti, 200)
341
- mp.changePlayerStateBy(mp.PlayerNumber.One, MultiplayerState.Score, 1)
342
- sprites.launchBow()
343
- })
344
- ```
345
-
346
-
347
- ## {10. Add Points #2}
348
-
349
- Do the same thing, but for the second player.
350
-
351
- - :paper plane: Open the ``||sprites:Sprites||`` category and drag the
352
- ```block
353
- sprites.onOverlap(SpriteKind.Player2, SpriteKind.Bow, function (sprite, otherSprite) {
354
- otherSprite.destroy(effects.confetti, 200)
355
- mp.changePlayerStateBy(mp.PlayerNumber.Two, MultiplayerState.Score, 1)
356
- sprites.launchBow()
357
- })
358
- ```
359
- bundle into **an empty area** of the workspace.
360
-
361
-
362
- Now, every time a bow overlaps with player 2, the bow will disappear in a burst of confetti, player 2 will get a point, and a new bow will spawn into the game window.
363
-
364
- ```blockconfig.local
365
- sprites.onOverlap(SpriteKind.Player2, SpriteKind.Bow, function (sprite, otherSprite) {
366
- otherSprite.destroy(effects.confetti, 200)
367
- mp.changePlayerStateBy(mp.PlayerNumber.Two, MultiplayerState.Score, 1)
368
- sprites.launchBow()
369
- })
370
- ```
371
-
372
-
373
- #### ~ tutorialhint
374
-
375
- ```blocks
376
-
377
- scene.setBackgroundImage(assets.image`background`)
378
- bundles.wrap1(function () {
379
- let player_1 = sprites.create(assets.image`p1`, SpriteKind.Player1)
380
- mp.moveWithButtons(mp.PlayerNumber.One, player_1, 0, 150)
381
- player_1.setStayInScreen(true)
382
- player_1.left = 15
383
333
  })
384
334
 
385
335
  bundles.wrap2(function () {
386
- let player_2 = sprites.create(assets.image`p2`, SpriteKind.Player2)
387
- mp.moveWithButtons(mp.PlayerNumber.Two, player_2, 0, 150)
388
- player_2.setStayInScreen(true)
389
- player_2.right = 145
336
+ mp.setPlayerSprite(mp.playerSelector(mp.PlayerNumber.Two), sprites.create(assets.image`p2`, SpriteKind.Player))
337
+ mp.moveWithButtons(mp.playerSelector(mp.PlayerNumber.Two), 0, 150)
338
+ mp.getPlayerSprite(mp.playerSelector(mp.PlayerNumber.Two)).setStayInScreen(true)
339
+ mp.getPlayerSprite(mp.playerSelector(mp.PlayerNumber.Two)).right = 145
390
340
  })
391
341
 
392
- sprites.onOverlap(SpriteKind.Player1, SpriteKind.Bow, function (sprite, otherSprite) {
393
- otherSprite.destroy(effects.confetti, 200)
394
- mp.changePlayerStateBy(mp.PlayerNumber.One, MultiplayerState.Score, 1)
395
- sprites.launchBow()
396
- })
342
+ sprites.launchBow()
397
343
 
398
344
  //@highlight
399
- sprites.onOverlap(SpriteKind.Player2, SpriteKind.Bow, function (sprite, otherSprite) {
345
+ sprites.onOverlap(SpriteKind.Player, SpriteKind.Bow, function (sprite, otherSprite) {
346
+ //@highlight
400
347
  otherSprite.destroy(effects.confetti, 200)
401
- mp.changePlayerStateBy(mp.PlayerNumber.Two, MultiplayerState.Score, 1)
402
- sprites.launchBow()
348
+ //@highlight
349
+ mp.changePlayerStateBy(mp.getPlayerBySprite(sprite), MultiplayerState.score, 1)
350
+ //@highlight
351
+ sprites.launchBow()
403
352
  })
404
353
  ```
405
354
 
406
355
 
407
356
 
357
+
358
+
408
359
  ## {11. Play Game!}
409
360
 
410
361
 
@@ -443,33 +394,31 @@ Can you figure out how to make the game longer or shorter?
443
394
  scene.setBackgroundImage(assets.image`background`)
444
395
 
445
396
  bundles.wrap1(function () {
446
- let player_1 = sprites.create(assets.image`p1`, SpriteKind.Player1)
447
- mp.moveWithButtons(mp.PlayerNumber.One, player_1, 0, 150)
448
- player_1.setStayInScreen(true)
449
- player_1.left = 15
397
+ mp.setPlayerSprite(mp.playerSelector(mp.PlayerNumber.One), sprites.create(assets.image`p1`, SpriteKind.Player))
398
+ mp.moveWithButtons(mp.playerSelector(mp.PlayerNumber.One), 0, 150)
399
+ mp.getPlayerSprite(mp.playerSelector(mp.PlayerNumber.One)).setStayInScreen(true)
400
+ mp.getPlayerSprite(mp.playerSelector(mp.PlayerNumber.One)).left = 15
401
+
450
402
  })
451
403
 
452
404
  bundles.wrap2(function () {
453
- let player_2 = sprites.create(assets.image`p2`, SpriteKind.Player2)
454
- mp.moveWithButtons(mp.PlayerNumber.Two, player_2, 0, 150)
455
- player_2.setStayInScreen(true)
456
- player_2.right = 145
405
+ mp.setPlayerSprite(mp.playerSelector(mp.PlayerNumber.Two), sprites.create(assets.image`p2`, SpriteKind.Player))
406
+ mp.moveWithButtons(mp.playerSelector(mp.PlayerNumber.Two), 0, 150)
407
+ mp.getPlayerSprite(mp.playerSelector(mp.PlayerNumber.Two)).setStayInScreen(true)
408
+ mp.getPlayerSprite(mp.playerSelector(mp.PlayerNumber.Two)).right = 145
457
409
  })
458
410
 
459
- sprites.onOverlap(SpriteKind.Player1, SpriteKind.Bow, function (sprite, otherSprite) {
460
- otherSprite.destroy(effects.confetti, 200)
461
- mp.changePlayerStateBy(mp.PlayerNumber.One, MultiplayerState.Score, 1)
462
- sprites.launchBow()
411
+ sprites.launchBow()
412
+ //@highlight
413
+ carnival.startCountdownGame(60, carnival.WinTypes.Multi)
414
+
415
+ sprites.onOverlap(SpriteKind.Player, SpriteKind.Bow, function (sprite, otherSprite) {
416
+ otherSprite.destroy(effects.confetti, 200)
417
+ mp.changePlayerStateBy(mp.getPlayerBySprite(sprite), MultiplayerState.score, 1)
418
+ sprites.launchBow()
463
419
  })
464
420
 
465
421
 
466
- sprites.onOverlap(SpriteKind.Player2, SpriteKind.Bow, function (sprite, otherSprite) {
467
- otherSprite.destroy(effects.confetti, 200)
468
- mp.changePlayerStateBy(mp.PlayerNumber.Two, MultiplayerState.Score, 1)
469
- sprites.launchBow()
470
- })
471
- //@highlight
472
- carnival.startCountdownGame(60, carnival.WinTypes.Multi)
473
422
 
474
423
  ```
475
424
 
@@ -491,83 +440,76 @@ When you're ready, sign-in and click **Done** to challenge a friend to a multipl
491
440
 
492
441
 
493
442
 
494
-
495
443
  ```blockconfig.global
496
444
 
497
- scene.setBackgroundImage(assets.image`background`)
445
+ scene.setBackgroundImage(img`.`)
498
446
 
499
447
  bundles.wrap1(function () {
500
- let player_1 = sprites.create(img`.`, SpriteKind.Player1)
501
- mp.moveWithButtons(mp.PlayerNumber.One, player_1, 0, 150)
502
- player_1.setStayInScreen(true)
503
- player_1.left = 15
448
+ mp.setPlayerSprite(mp.playerSelector(mp.PlayerNumber.One), sprites.create(img`.`, SpriteKind.Player))
449
+ mp.moveWithButtons(mp.playerSelector(mp.PlayerNumber.One), 0, 150)
450
+ mp.getPlayerSprite(mp.playerSelector(mp.PlayerNumber.One)).setStayInScreen(true)
451
+ mp.getPlayerSprite(mp.playerSelector(mp.PlayerNumber.One)).left = 15
504
452
  })
505
453
 
506
- sprites.onOverlap(SpriteKind.Player1, SpriteKind.Bow, function (sprite, otherSprite) {
507
- otherSprite.destroy(effects.confetti, 200)
508
- mp.changePlayerStateBy(mp.PlayerNumber.One, MultiplayerState.Score, 1)
509
- sprites.launchBow()
510
- })
454
+ sprites.onOverlap(SpriteKind.Player, SpriteKind.Bow, function (sprite, otherSprite) {
455
+ otherSprite.destroy(effects.confetti, 200)
456
+ mp.changePlayerStateBy(mp.getPlayerBySprite(sprite), MultiplayerState.score, 1)
457
+ sprites.launchBow()
458
+ })
511
459
 
512
460
  bundles.wrap2(function () {
513
- let player_2 = sprites.create(img`.`, SpriteKind.Player2)
514
- mp.moveWithButtons(mp.PlayerNumber.Two, player_2, 0, 150)
515
- player_2.setStayInScreen(true)
516
- player_2.right = 145
461
+ mp.setPlayerSprite(mp.playerSelector(mp.PlayerNumber.Two), sprites.create(img`.`, SpriteKind.Player))
462
+ mp.moveWithButtons(mp.playerSelector(mp.PlayerNumber.Two), 0, 150)
463
+ mp.getPlayerSprite(mp.playerSelector(mp.PlayerNumber.Two)).setStayInScreen(true)
464
+ mp.getPlayerSprite(mp.playerSelector(mp.PlayerNumber.Two)).right = 145
517
465
  })
518
466
 
519
-
520
467
  carnival.startCountdownGame(60, carnival.WinTypes.Multi)
521
468
 
522
469
  ```
523
470
 
524
471
 
525
472
 
473
+ ```package
474
+ multiplayer
475
+ arcade-carnival=github:microsoft/arcade-carnival
476
+ ```
477
+
478
+
526
479
 
527
480
 
528
481
  ```ghost
529
482
 
530
- sprites.onOverlap(SpriteKind.Player1, SpriteKind.Bow, function (sprite, otherSprite) {
531
- otherSprite.destroy(effects.confetti, 200)
532
- mp.changePlayerStateBy(mp.PlayerNumber.One, MultiplayerState.Score, 1)
533
- sprites.launchBow()
534
- })
535
- sprites.onOverlap(SpriteKind.Player2, SpriteKind.Bow, function (sprite, otherSprite) {
536
- otherSprite.destroy(effects.confetti, 200)
537
- mp.changePlayerStateBy(mp.PlayerNumber.Two, MultiplayerState.Score, 1)
483
+ sprites.onOverlap(SpriteKind.Player, SpriteKind.Bow, function (sprite, otherSprite) {
484
+ otherSprite.destroy(effects.confetti, 200)
485
+ mp.changePlayerStateBy(mp.getPlayerBySprite(sprite), MultiplayerState.score, 1)
486
+ sprites.launchBow()
487
+ })
488
+ scene.setBackgroundImage(assets.image`background`)
489
+ mp.setPlayerSprite(mp.playerSelector(mp.PlayerNumber.One), sprites.create(assets.image`p1`, SpriteKind.Player))
490
+ mp.getPlayerSprite(mp.playerSelector(mp.PlayerNumber.One)).setStayInScreen(true)
491
+ mp.getPlayerSprite(mp.playerSelector(mp.PlayerNumber.One)).left = 15
492
+ mp.moveWithButtons(mp.playerSelector(mp.PlayerNumber.One), 0, 150)
493
+ mp.setPlayerSprite(mp.playerSelector(mp.PlayerNumber.Two), sprites.create(assets.image`p2`, SpriteKind.Player))
494
+ mp.getPlayerSprite(mp.playerSelector(mp.PlayerNumber.Two)).setStayInScreen(true)
495
+ mp.getPlayerSprite(mp.playerSelector(mp.PlayerNumber.Two)).right = 145
496
+ mp.moveWithButtons(mp.playerSelector(mp.PlayerNumber.Two), 0, 150)
538
497
  sprites.launchBow()
539
- })
540
-
541
- scene.setBackgroundImage(assets.image`background`)
542
- let player_1 = sprites.create(assets.image`p1`, SpriteKind.Player1)
543
- mp.moveWithButtons(mp.PlayerNumber.One, player_1, 0, 150)
544
- player_1.setStayInScreen(true)
545
- player_1.left = 15
546
- let player_2 = sprites.create(assets.image`p2`, SpriteKind.Player2)
547
- mp.moveWithButtons(mp.PlayerNumber.Two, player_2, 0, 150)
548
- player_2.setStayInScreen(true)
549
- player_2.right = 145
550
- sprites.launchBow()
551
- carnival.startCountdownGame(60, carnival.WinTypes.Multi)
498
+ carnival.startCountdownGame(60, carnival.WinTypes.Multi)
552
499
 
553
500
  ```
554
501
 
555
502
 
556
- ```package
557
- arcade-mp=github:riknoll/arcade-mp
558
- arcade-carnival=github:microsoft/arcade-carnival
559
- ```
560
503
 
561
504
  ```customts
505
+
562
506
  namespace SpriteKind {
563
- //% isKind
564
- export const Player1 = SpriteKind.create()
565
- //% isKind
566
- export const Player2 = SpriteKind.create()
567
507
  //% isKind
568
508
  export const Bow = SpriteKind.create()
569
509
  }
570
510
 
511
+
512
+
571
513
  //% color=#6d5ba4 icon="\uf0f2"
572
514
  namespace bundles{
573
515
  /**
@@ -596,7 +538,7 @@ namespace sprites{
596
538
  */
597
539
  //% block="launch new bow" weight=200
598
540
  export function launchBow () {
599
- let bow = sprites.create(assets.image`bow`, SpriteKind.Bow)
541
+ let bow = sprites.create(assets.image`bow` , SpriteKind.Bow)
600
542
  bow.setPosition(80, 90)
601
543
  bow.setVelocity([-150, 150]._pickRandom(), [75, -75]._pickRandom())
602
544
  bow.setBounceOnWall(true)
@@ -608,13 +550,12 @@ namespace sprites{
608
550
 
609
551
  ```assetjson
610
552
  {
611
- "README.md": " ",
612
553
  "assets.json": "",
613
554
  "images.g.jres": "{\n \"image1\": {\n \"data\": \"hwQZABkAAAAAu7u7CwAAAAAAAAAAAAAAAOvu7ru7u7u7uwAAAAAAAADr7u6+IiIiIiILAAAAAAAAu+7uviIiIiIiuwAAAAAAsEvu7u4rIiIiIrIAAAAAALBE6+7uKyIiIiIiCwAAAACwRLS7u7siIiIiIrIAAAAAsES0IiKyu7u7u7u7AAAAALBERCsiskREREREtAAAAACwREQrIrJERERERLQAAAAAsEREKyKyRERERES0AAAAALBERCsiskREREREtAAAAACwRLQiIktERERERAsAAAAAS0S0IiJLREREREQLAAAAAEtEtCIiS0RERERECwAAAABLRLQiIktERERERAsAAAAAS0S0IiJLREREREQLAAAAAEtEtCIiS0RERERECwAAAABLRLQiIktERERERAsAAAAAsES0IiJLREREREQLAAAAALBEtCKyRERERES0AAAAAAAAS7QiskREREREtAAAAAAAALC7IrJERERERLQAAAAAAACwKyKyu7u7u7u7AAAAAAAAACsisgAAAAAAAAAAAAAA\",\n \"mimeType\": \"image/x-mkcd-f4\",\n \"displayName\": \"p1\"\n },\n \"image2\": {\n \"data\": \"hwQZABkAAAAAAGtmtgAAAAAAAAAAAAAAALBrZra7u7u7u7sAAAAAAACwu2a2mZmZmZm5AAAAAAAAm7lmtpmZmZmZuQAAAAAAsJm5ZraZmZmZmbkAAAAAALCZuWZmm5mZmZmZCwAAAACbmblmZpuZmZmZmQsAAAAAm5m5ZmabmZmZmZkLAAAAAJuZuWZmm5mZmZmZCwAAAACbmblmZpuZmZmZmQsAAAAAm5m5ZmabmZmZmZkLAAAAAJuZuWZmm5mZmZmZCwAAAACwmblmZpuZmZmZmQsAAAAAsJmZa2a2mZmZmZm5AAAAALCZmWtmtpmZmZmZuQAAAACwmZlrZraZmZmZmbkAAAAAsJmZa2a2mZmZmZm5AAAAALCZuWZmtru7u7u7uwAAAACwmbm7u7tmZmZmZrYAAAAAsJmLiIhrZmZmZmYLAAAAALCbiIiIa2ZmZma2AAAAAAAAu4iIuGZmZmZmuwAAAAAAAIuIiLhmZmZmZgsAAAAAAACLiIi7u7u7u7sAAAAAAAAAu7u7CwAAAAAAAAAAAAAA\",\n \"mimeType\": \"image/x-mkcd-f4\",\n \"displayName\": \"p2\"\n },\n \"image3\": {\n \"data\": \"hwSgAHgAAADd3d3d3d3d3d3d3d3d3d3d3d3d3d0dERER0dEdERER3d3d3d3dHdHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0dERER0REdERER3d3d3d3d3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dERER0RHdERER3d3d3d3d3RHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dERERERHRERER3d3d3d3d3RHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dERERERHRERER0d3d3d3d3R3R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dHRERERHRHRERER0d3d3d3d3R3R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0d3d3d0dERERERERERERERER0d3d3d3d3d0R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dEdHd3d3d0RERHRHREREREREREd3d3d3d3d0R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0REd3d3d3d3R0dHREREREREREREd3d3d3d3d0R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dEdHd3d3d3d3dHREdERERERER3d3d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0d3d3d3d3d3dHREdEREREREd3d3d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3REREREdHd3d3d3d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dER0d3d3d3d3d3d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dEREdEd3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3R0RERER0REdHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3R0RERERERERHR3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3R0RERERERHRHRHR3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3R0RERERERHRHRHRHdHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dHd3d3d3d3R0RERERERHRHRHRHdHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dEdHd3d3d3R0RERERERHdHRHRHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dHd3d3d3R0RERERERERHdERHRHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0R3REREREREREdHdERHREd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0REREREREREREREdEdERHR0d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0REREREREREREd0RERER0d3d3d3R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0d3d3d3d3d3d3dEdHREREREREd0RERER0d3d3d3R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dHRERERERER0RERER3d3d3d3R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dHRERERER0R0RERER3d3d3R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dHRERERER0RERER0R3d3d3R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dEdERERER0REdHd3d3d3d3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dHd3REdEREdHR0R3dHd3R3d3d3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dHd3d3d3d3d3dHdHRERER3d3d3d3d3d3d3d3d3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0d0d3d3d3dEdHd3d3d3d0dHRERERERHR3R3d3d3R3d3d3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0d0d3d3d3dHd3d3d3d3REdEREREREdHRHR0d3d3dHd3d3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0REREREREREREdHREREdHR3d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dEd0RERERER3RERERHREd3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3REdERER0R0RERER0d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0dERHR0R0RERER0d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0d3d3d3d0dEREREd0RERER0d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0dERERHd0RERER3d3d3d3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0d3d3d3d3d3d3d3d3d3d0dERER3dEdERER3d3d3d3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0dERER0dEdERER3d3d3d3dHdHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0dERER0REdERER3d3d3d3d3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dERER0RHdERER3d3d3d3d3RHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dERERERHRERER3d3d3d3d3RHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dERERERHRERER0d3d3d3d3R3R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dHRERERHRHRERER0d3d3d3d3R3R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0d3d3d0dERERERERERERERER0d3d3d3d3d0R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dEdHd3d3d0RERHRHREREREREREd3d3d3d3d0R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0REd3d3d3d3R0dHREREREREREREd3d3d3d3d0R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dEdHd3d3d3d3dHREdERERERER3d3d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0d3d3d3d3d3dHREdEREREREd3d3d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3REREREdHd3d3d3d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dER0d3d3d3d3d3d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dEREdEd3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3R0RERER0REdHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3R0RERERERERHR3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3R0RERERERHRHRHR3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3R0RERERERHRHRHRHdHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dHd3d3d3d3R0RERERERHRHRHRHdHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dEdHd3d3d3R0RERERERHdHRHRHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dHd3d3d3R0RERERERERHdERHRHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0R3REREREREREdHdERHREd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0REREREREREREREdEdERHR0d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0REREREREREREd0RERER0d3d3d3R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0d3d3d3d3d3d3dEdHREREREREd0RERER0d3d3d3R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dHRERERERER0RERER3d3d3d3R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dHRERERER0R0RERER3d3d3R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dHRERERER0RERER0R3d3d3R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dEdERERER0REdHd3d3d3d3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dHd3REdEREdHR0R3dHd3R3d3d3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dHd3d3d3d3d3dHdHRERER3d3d3d3d3d3d3d3d3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0d0d3d3d3dEdHd3d3d3d0dHRERERERHR3R3d3d3R3d3d3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0d0d3d3d3dHd3d3d3d3REdEREREREdHRHR0d3d3dHd3d3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0REREREREREREdHREREdHR3d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dEd0RERERER3RERERHREd3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3REdERER0R0RERER0d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0dERHR0R0RERER0d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0d3d3d3d0dEREREd0RERER0d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0dERERHd0RERER3d3d3d3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0d3d3d3d3d3d3d3d3d3d0dERER3dEdERER3d3d3d3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0dERER0dEdERER3d3d3d3dHdHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0dERER0REdERER3d3d3d3d3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dERER0RHdERER3d3d3d3d3RHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dERERERHRERER3d3d3d3d3RHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dERERERHRERER0d3d3d3d3R3R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dHRERERHRHRERER0d3d3d3d3R3R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0d3d3d0dERERERERERERERER0d3d3d3d3d0R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dEdHd3d3d0RERHRHREREREREREd3d3d3d3d0R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0REd3d3d3d3R0dHREREREREREREd3d3d3d3d0R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dEdHd3d3d3d3dHREdERERERER3d3d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0d3d3d3d3d3dHREdEREREREd3d3d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3REREREdHd3d3d3d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dER0d3d3d3d3d3d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dEREdEd3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3R0RERER0REdHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3R0RERERERERHR3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3R0RERERERHRHRHR3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3R0RERERERHRHRHRHdHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dHd3d3d3d3R0RERERERHRHRHRHdHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dEdHd3d3d3R0RERERERHdHRHRHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dHd3d3d3R0RERERERERHdERHRHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0R3REREREREREdHdERHREd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0REREREREREREREdEdERHR0d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0REREREREREREd0RERER0d3d3d3R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0d3d3d3d3d3d3dEdHREREREREd0RERER0d3d3d3R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dHRERERERER0RERER3d3d3d3R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dHRERERER0R0RERER3d3d3R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dHRERERER0RERER0R3d3d3R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dEdERERER0REdHd3d3d3d3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dHd3REdEREdHR0R3dHd3R3d3d3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dHd3d3d3d3d3dHdHRERER3d3d3d3d3d3d3d3d3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0d0d3d3d3dEdHd3d3d3d0dHRERERERHR3R3d3d3R3d3d3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0d0d3d3d3dHd3d3d3d3REdEREREREdHRHR0d3d3dHd3d3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0REREREREREREdHREREdHR3d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dEd0RERERER3RERERHREd3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3REdERER0R0RERER0d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0dERHR0R0RERER0d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0d3d3d3d0dEREREd0RERER0d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0dERERHd0RERER3d3d3d3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0d3d3d3d3d3d3d3d3d3d0dERER3dEdERER3d3d3d3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0dERER0dEdERER3d3d3d3dHdHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0dERER0REdERER3d3d3d3d3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dERER0RHdERER3d3d3d3d3RHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dERERERHRERER3d3d3d3d3RHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dERERERHRERER0d3d3d3d3R3R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dHRERERHRHRERER0d3d3d3d3R3R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0d3d3d0dERERERERERERERER0d3d3d3d3d0R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dEdHd3d3d0RERHRHREREREREREd3d3d3d3d0R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0REd3d3d3d3R0dHREREREREREREd3d3d3d3d0R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dEdHd3d3d3d3dHREdERERERER3d3d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0d3d3d3d3d3dHREdEREREREd3d3d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3REREREdHd3d3d3d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dER0d3d3d3d3d3d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dEREdEd3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3R0RERER0REdHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3R0RERERERERHR3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3R0RERERERHRHRHR3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3R0RERERERHRHRHRHdHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dHd3d3d3d3R0RERERERHRHRHRHdHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dEdHd3d3d3R0RERERERHdHRHRHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dHd3d3d3R0RERERERERHdERHRHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0R3REREREREREdHdERHREd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0REREREREREREREdEdERHR0d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0REREREREREREd0RERER0d3d3d3R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0d3d3d3d3d3d3dEdHREREREREd0RERER0d3d3d3R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dHRERERERER0RERER3d3d3d3R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dHRERERER0R0RERER3d3d3R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dHRERERER0RERER0R3d3d3R3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dEdERERER0REdHd3d3d3d3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dHd3REdEREdHR0R3dHd3R3d3d3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dHd3d3d3d3d3dHdHRERER3d3d3d3d3d3d3d3d3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0d0d3d3d3dEdHd3d3d3d0dHRERERERHR3R3d3d3R3d3d3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0d0d3d3d3dHd3d3d3d3REdEREREREdHRHR0d3d3dHd3d3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0REREREREREREdHREREdHR3d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3dEd0RERERER3RERERHREd3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3REdERER0R0RERER0d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0dERHR0R0RERER0d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0d3d3d3d0dEREREd0RERER0d3d3d3d0d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0dERERHd0RERER3d3d3d3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0d3d3d3d3d3d3d3d3d3d0dERER3dEdERER3d3d3d3dHd3d3d3d3d3d3d3d3d3d3d3d3d3d3d0=\",\n \"mimeType\": \"image/x-mkcd-f4\",\n \"displayName\": \"background\"\n },\n \"image4\": {\n \"data\": \"hwQQABAAAAAAAAAAAAAAAAAAsLsLAAAAAACw1b3MzAAAALBVvVvFDACwu1W7VdUMALu1u1VbvQywXbVVVbXLALBVtVVV1csAsFW1VVXVywCwXbURVbXLAAC7GxtVu70MALDbsbtb1QwAALBVvVXFDAAAsNW9zMwAAACwuwsAAAAAAAAAAAAAAA==\",\n \"mimeType\": \"image/x-mkcd-f4\",\n \"displayName\": \"bow\"\n },\n \"*\": {\n \"mimeType\": \"image/x-mkcd-f4\",\n \"dataEncoding\": \"base64\",\n \"namespace\": \"myImages\"\n }\n}",
614
555
  "images.g.ts": "// Auto-generated code. Do not edit.\nnamespace myImages {\n\n helpers._registerFactory(\"image\", function(name: string) {\n switch(helpers.stringTrim(name)) {\n case \"image1\":\n case \"p1\":return img`\n.............bbbbbb......\n....bbbbbbbbb444444bb....\nbbbbb4444444444444444b...\nbeeb444444444444444444bb.\nbeeeeb4444444444444444bbb\nbeeeeebb4444bbbbbbbbbbb22\nbeeeeeb2bbbb2222222222222\nbeeeeeb222222222222222222\nbbeeeeb222222222222222222\n.bbbeeb2222222222222bbbbb\n.b22bbb22222bbbbbbbb444b.\n.b2222bbbbbb44444444444b.\n.b22222b444444444444444b.\n.b22222b444444444444444b.\n.b22222b444444444444444b.\n.b22222b444444444444444b.\n.b22222b444444444444444b.\n.b22222b444444444444444b.\n.b22222b444444444444444b.\n.b22222b444444444444444b.\n..bb222b444444444444444b.\n...bb22b444444444444bbbb.\n.....b2b4444bbbbbbbb.....\n......bbbbbb.............\n.........................\n`;\n case \"image2\":\n case \"p2\":return img`\n......bbbbbb.............\n....bb999999bbbbbbbbb....\n...b9999999999999999bbbbb\n.bb999999999999999999b88b\nbbb9999999999999999b8888b\n66bbbbbbbbbbb9999bb88888b\n6666666666666bbbb6b88888b\n666666666666666666b88888b\n666666666666666666b8888bb\nbbbbb6666666666666b88bbb.\n.b999bbbbbbbb66666bbb66b.\n.b99999999999bbbbbb6666b.\n.b999999999999999b66666b.\n.b999999999999999b66666b.\n.b999999999999999b66666b.\n.b999999999999999b66666b.\n.b999999999999999b66666b.\n.b999999999999999b66666b.\n.b999999999999999b66666b.\n.b999999999999999b66666b.\n.b999999999999999b666bb..\n.bbbb999999999999b66bb...\n.....bbbbbbbb9999b6b.....\n.............bbbbbb......\n.........................\n`;\n case \"image3\":\n case \"background\":return img`\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\nddddddddddddddddddddddddddddddd11dddddddddddddddddddddddddddddddddddddd11dddddddddddddddddddddddddddddddddddddd11dddddddddddddddddddddddddddddddddddddd11ddddddd\nddddddddddddddddddddddddddddddd11dddddddddddddddddddddddddddddddddddddd11dddddddddddddddddddddddddddddddddddddd11dddddddddddddddddddddddddddddddddddddd11ddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\nddddddddddddddd1ddddddddddddddddddddddd1ddddddddddddddd1ddddddddddddddddddddddd1ddddddddddddddd1ddddddddddddddddddddddd1ddddddddddddddd1ddddddddddddddddddddddd1\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddd1dddddd1dddddddddddddddddddddddddddddddd1dddddd1dddddddddddddddddddddddddddddddd1dddddd1dddddddddddddddddddddddddddddddd1dddddd1dddddddd\ndddddddddddddddddddddddddddddd111ddddddddddddddddddddddddddddddddddddd111ddddddddddddddddddddddddddddddddddddd111ddddddddddddddddddddddddddddddddddddd111ddddddd\nddddddddddddddddddddddddddddddd1ddddddddddddddddddddddddddddddddddddddd1ddddddddddddddddddddddddddddddddddddddd1ddddddddddddddddddddddddddddddddddddddd1dddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddd1ddddddddddddddddddddddddddddddddddddddd1ddddddddddddddddddddddddddddddddddddddd1ddddddddddddddddddddddddddddddddddddddd1ddddddddddddddddddddddddddddddd\ndddddddd1ddddddddddddddddddddddddddddddddddddddd1ddddddddddddddddddddddddddddddddddddddd1ddddddddddddddddddddddddddddddddddddddd1ddddddddddddddddddddddddddddddd\ndddddd11111ddddddddddddddddddddddddddddddddddd11111ddddddddddddddddddddddddddddddddddd11111ddddddddddddddddddddddddddddddddddd11111ddddddddddddddddddddddddddddd\nddddddd111ddddddddddddddddddddddddddddddddddddd111ddddddddddddddddddddddddddddddddddddd111ddddddddddddddddddddddddddddddddddddd111dddddddddddddddddddddddddddddd\nddddddd1d1ddddddddddddddddddddddddddddddddddddd1d1ddddddddddddddddddddddddddddddddddddd1d1ddddddddddddddddddddddddddddddddddddd1d1dddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\nddddddddddddddddddddddddddddddddd1ddddddddddddddddddddddddddddddddddddddd1ddddddddddddddddddddddddddddddddddddddd1ddddddddddddddddddddddddddddddddddddddd1dddddd\nddddddddddddddddddddddddddddddddd1ddd1ddddddddddddddddddddddddddddddddddd1ddd1ddddddddddddddddddddddddddddddddddd1ddd1ddddddddddddddddddddddddddddddddddd1ddd1dd\nddddddddddddddddddd1ddddddddddddd1ddddddddddddddddddddddddd1ddddddddddddd1ddddddddddddddddddddddddd1ddddddddddddd1ddddddddddddddddddddddddd1ddddddddddddd1dddddd\ndddddddddddddddddd111dddddddddddd1dddddddddddddddddddddddd111dddddddddddd1dddddddddddddddddddddddd111dddddddddddd1dddddddddddddddddddddddd111dddddddddddd1dddddd\nddddddddddddddddddd1dddddddddddd111dddddddddddddddddddddddd1dddddddddddd111dddddddddddddddddddddddd1dddddddddddd111dddddddddddddddddddddddd1dddddddddddd111ddddd\ndddddddddddddddddddddddddddddddd11dddddddddddddddddddddddddddddddddddddd11dddddddddddddddddddddddddddddddddddddd11dddddddddddddddddddddddddddddddddddddd11dddddd\ndddddddddddddddddddddd1dddddddddd1dddddddddddddddddddddddddddd1dddddddddd1dddddddddddddddddddddddddddd1dddddddddd1dddddddddddddddddddddddddddd1dddddddddd1dddddd\ndddddd1ddddddddddddddd1dddddddd1111ddddddddddd1ddddddddddddddd1dddddddd1111ddddddddddd1ddddddddddddddd1dddddddd1111ddddddddddd1ddddddddddddddd1dddddddd1111ddddd\ndddddd11ddddddddddddd111dddddddd111ddddddddddd11ddddddddddddd111dddddddd111ddddddddddd11ddddddddddddd111dddddddd111ddddddddddd11ddddddddddddd111dddddddd111ddddd\ndddddd1ddddddddddddddd1dddddd11111dddddddddddd1ddddddddddddddd1dddddd11111dddddddddddd1ddddddddddddddd1dddddd11111dddddddddddd1ddddddddddddddd1dddddd11111dddddd\nddddd111dddddddddddddd111ddddd111111ddddddddd111dddddddddddddd111ddddd111111ddddddddd111dddddddddddddd111ddddd111111ddddddddd111dddddddddddddd111ddddd111111dddd\ndddddd111dddddddddddd111ddddddd11111dddddddddd111dddddddddddd111ddddddd11111dddddddddd111dddddddddddd111ddddddd11111dddddddddd111dddddddddddd111ddddddd11111dddd\nddddd111dddddddddddd1111ddddd111111dddddddddd111dddddddddddd1111ddddd111111dddddddddd111dddddddddddd1111ddddd111111dddddddddd111dddddddddddd1111ddddd111111ddddd\n11dddd111ddddddddddddd111dddddd11111111111dddd111ddddddddddddd111dddddd11111111111dddd111ddddddddddddd111dddddd11111111111dddd111ddddddddddddd111dddddd111111111\n1111111ddddddddddddd1111dddd1111111111111111111ddddddddddddd1111dddd1111111111111111111ddddddddddddd1111dddd1111111111111111111ddddddddddddd1111dddd111111111111\n11111111111dddddddddd111111111111111111111111111111dddddddddd111111111111111111111111111111dddddddddd111111111111111111111111111111dddddddddd1111111111111111111\n11111111111111dddddd1111111111111111111111111111111111dddddd1111111111111111111111111111111111dddddd1111111111111111111111111111111111dddddd11111111111111111111\n111111111111dd11111111111111dd1111111111111111111111dd11111111111111dd1111111111111111111111dd11111111111111dd1111111111111111111111dd11111111111111dd1111111111\n111111111dd111111111111111111111dd111111111111111dd111111111111111111111dd111111111111111dd111111111111111111111dd111111111111111dd111111111111111111111dd111111\n1111111d1111111111111111111111111111d1111111111d1111111111111111111111111111d1111111111d1111111111111111111111111111d1111111111d1111111111111111111111111111d111\n11111d111111111111111111111111ddddd111dd11111d111111111111111111111111ddddd111dd11111d111111111111111111111111ddddd111dd11111d111111111111111111111111ddddd111dd\nddd111111111d11111111111111111d111ddd11dddd111111111d11111111111111111d111ddd11dddd111111111d11111111111111111d111ddd11dddd111111111d11111111111111111d111ddd11d\n111111111111d11111111111111111dd111dddd1111111111111d11111111111111111dd111dddd1111111111111d11111111111111111dd111dddd1111111111111d11111111111111111dd111dddd1\nd11111111111dd111111111111111dd111111dddd11111111111dd111111111111111dd111111dddd11111111111dd111111111111111dd111111dddd11111111111dd111111111111111dd111111ddd\nddd11111111ddd1111111111111111d11111111dddd11111111ddd1111111111111111d11111111dddd11111111ddd1111111111111111d11111111dddd11111111ddd1111111111111111d11111111d\n11dddd111111d1111111111111111dddd111111111dddd111111d1111111111111111dddd111111111dddd111111d1111111111111111dddd111111111dddd111111d1111111111111111dddd1111111\n11111111111ddd1111111111111111dd1111111111111111111ddd1111111111111111dd1111111111111111111ddd1111111111111111dd1111111111111111111ddd1111111111111111dd11111111\n111111111111ddd11111111111ddddddd1111111111111111111ddd11111111111ddddddd1111111111111111111ddd11111111111ddddddd1111111111111111111ddd11111111111ddddddd1111111\n11111111111dd1111111111dddd11dddd111111111111111111dd1111111111dddd11dddd111111111111111111dd1111111111dddd11dddd111111111111111111dd1111111111dddd11dddd1111111\n11111111111ddd1111111dddd11111dddd11111111111111111ddd1111111dddd11111dddd11111111111111111ddd1111111dddd11111dddd11111111111111111ddd1111111dddd11111dddd111111\n1111111111ddddd1111dddd11111ddddd11111111111111111ddddd1111dddd11111ddddd11111111111111111ddddd1111dddd11111ddddd11111111111111111ddddd1111dddd11111ddddd1111111\n11111111111ddd11dddddd1111111dddddd1111111111111111ddd11dddddd1111111dddddd1111111111111111ddd11dddddd1111111dddddd1111111111111111ddd11dddddd1111111dddddd11111\ndddd11111ddddddddddd11111111dddddd1111dddddd11111ddddddddddd11111111dddddd1111dddddd11111ddddddddddd11111111dddddd1111dddddd11111ddddddddddd11111111dddddd1111dd\nddddddd11ddddd1111111111111111dddd1dddddddddddd11ddddd1111111111111111dddd1dddddddddddd11ddddd1111111111111111dddd1dddddddddddd11ddddd1111111111111111dddd1ddddd\ndddddddddddddddd11111111111ddddd1ddddddddddddddddddddddd11111111111ddddd1ddddddddddddddddddddddd11111111111ddddd1ddddddddddddddddddddddd11111111111ddddd1ddddddd\nddddddddddddddd1111111111111ddd1ddddddddddddddddddddddd1111111111111ddd1ddddddddddddddddddddddd1111111111111ddd1ddddddddddddddddddddddd1111111111111ddd1dddddddd\ndddddddddddddddd111111111111d1dddddddddddddddddddddddddd111111111111d1dddddddddddddddddddddddddd111111111111d1dddddddddddddddddddddddddd111111111111d1dddddddddd\nddddddddddddddddddddddd11111ddddddddddddddddddddddddddddddddddd11111ddddddddddddddddddddddddddddddddddd11111ddddddddddddddddddddddddddddddddddd11111dddddddddddd\nddddddddddddddddddddd1111dddddddddddddddddddddddddddddddddddd1111dddddddddddddddddddddddddddddddddddd1111dddddddddddddddddddddddddddddddddddd1111ddddddddddddddd\nddddddddddddddddd11111ddddddddddddddddddddddddddddddddddd11111ddddddddddddddddddddddddddddddddddd11111ddddddddddddddddddddddddddddddddddd11111dddddddddddddddddd\nddddddddddddddddd11dddddddddddddddddddddddddddddddddddddd11dddddddddddddddddddddddddddddddddddddd11dddddddddddddddddddddddddddddddddddddd11ddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\nddddddddddddddddddddddddddddddddd11111ddddddddddddddddddddddddddddddddddd11111ddddddddddddddddddddddddddddddddddd11111ddddddddddddddddddddddddddddddddddd11111dd\n1dddddddddddddddddddddddddddddd11ddddd111dddddddddddddddddddddddddddddd11ddddd111dddddddddddddddddddddddddddddd11ddddd111dddddddddddddddddddddddddddddd11ddddd11\n1111dddddddddddddddddddddddd111ddddddddd1111dddddddddddddddddddddddd111ddddddddd1111dddddddddddddddddddddddd111ddddddddd1111dddddddddddddddddddddddd111ddddddddd\ndd1111dddddddddddddddddddd11dddddddddddddd1111dddddddddddddddddddd11dddddddddddddd1111dddddddddddddddddddd11dddddddddddddd1111dddddddddddddddddddd11dddddddddddd\ndddd11111dddddddddddddd111dddddddddddddddddd11111dddddddddddddd111dddddddddddddddddd11111dddddddddddddd111dddddddddddddddddd11111dddddddddddddd111dddddddddddddd\ndddddd1111111ddddddddd1ddddddddddddddddddddddd1111111ddddddddd1ddddddddddddddddddddddd1111111ddddddddd1ddddddddddddddddddddddd1111111ddddddddd1ddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\n`;\n case \"image4\":\n case \"bow\":return img`\n. . . . . . . . . . . . . . . . \n. . . . . . b b b b . . . . . . \n. . . . . b d 5 5 d b . . . . . \n. . . . b b 5 5 5 5 b b . . . . \n. . . . b 5 5 5 5 5 b b . . . . \n. b b b b b b b b b 1 d b b b . \n. b 5 5 5 b 5 5 5 1 b 1 5 5 b . \n. b d 5 5 b 5 5 5 1 1 b 5 d b . \n. b d d b 5 5 5 5 5 5 b d d b . \n. . b b b 5 5 5 5 5 5 b b b . . \n. . c b 5 b 5 5 5 5 b b 5 c . . \n. . c 5 5 5 b d d b b 5 5 c . . \n. . c 5 5 d b b b b d 5 5 c . . \n. . c c d b c c c c b d c c . . \n. . . c c c . . . . c c c . . . \n. . . . . . . . . . . . . . . . \n`;\n }\n return null;\n })\n\n helpers._registerFactory(\"animation\", function(name: string) {\n switch(helpers.stringTrim(name)) {\n\n }\n return null;\n })\n\n helpers._registerFactory(\"song\", function(name: string) {\n switch(helpers.stringTrim(name)) {\n\n }\n return null;\n })\n\n}\n// Auto-generated code. Do not edit.\n",
615
- "main.blocks": "<xml xmlns=\"https://developers.google.com/blockly/xml\"><variables><variable type=\"KIND_MultiplayerState\" id=\"-ZC+lz=c_AXHv!:)~pvM\">Score</variable><variable type=\"KIND_MultiplayerState\" id=\"ZofwVLKU_EylEx$I(7.!\">Lives</variable><variable id=\"Wz_nj/6IVPvg{syI.w$X\">bow</variable><variable id=\",dddnum_7$A1y:^k5#mp\">player_1</variable><variable id=\"Rceb^1E*6sc!PaCR0CUm\">player_2</variable><variable id=\"fz{KgoYP#-JS+6Is5uBt\">index</variable><variable id=\"onVrwafD5]G-LH%{zJ0h\">wall1</variable><variable id=\"Ys8b]J69]C9=_xAi09cD\">wall2</variable><variable type=\"KIND_SpriteKind\" id=\"9m|6;!RFH-xxFlCrmO+Y\">Player1</variable><variable type=\"KIND_SpriteKind\" id=\"P43lgreD$rcaG,=Qqo*s\">Player2</variable><variable type=\"KIND_SpriteKind\" id=\"G4Zc7_*1827#onUTuw:K\">Player</variable><variable type=\"KIND_SpriteKind\" id=\")cFh{}tr:FLH9+]**[n|\">Projectile</variable><variable type=\"KIND_SpriteKind\" id=\"YA+YiD-tv4S5E8(V6H1A\">Food</variable><variable type=\"KIND_SpriteKind\" id=\"K)AXH23.q.Vc-WExjbyl\">Enemy</variable><variable type=\"KIND_SpriteKind\" id=\":*ZnOk4Qb31)At/^(n:6\">Ball</variable><variable type=\"KIND_SpriteKind\" id=\"jeDwvWaDeP,DGFb?p/:F\">Booth</variable><variable type=\"KIND_SpriteKind\" id=\"tWl`ecSJQu;lFGY2|H44\">Mouse</variable><variable type=\"KIND_SpriteKind\" id=\"xYj2+1MG%%LG[z]Gb`o8\">Crosshair</variable><variable type=\"KIND_SpriteKind\" id=\"C5{Qj}Kn(+k`qGm[yRgU\">Moon</variable><variable type=\"KIND_SpriteKind\" id=\"s!_.~@^m0;QRvQ:!VPIJ\">StatusBar</variable><variable type=\"KIND_SpriteKind\" id=\"ztRO%J4tCGUvNux+BqJ)\">Text</variable><variable type=\"KIND_SpriteKind\" id=\"U*z^kPwat^5jk{Kt1[9K\">Bow</variable></variables><block type=\"pxt-on-start\" x=\"0\" y=\"0\"><statement name=\"HANDLER\"><block type=\"gamesetbackgroundimage\"><value name=\"img\"><shadow type=\"background_image_picker\"><field name=\"img\">assets.image`background`</field><data>{\"commentRefs\":[],\"fieldData\":{\"img\":\"myImages.image3\"}}</data></shadow></value><next><block type=\"variables_set\"><field name=\"VAR\" id=\",dddnum_7$A1y:^k5#mp\">player_1</field><value name=\"VALUE\"><shadow type=\"math_number\"><field name=\"NUM\">0</field></shadow><block type=\"spritescreate\"><value name=\"img\"><shadow type=\"screen_image_picker\"><field name=\"img\">assets.image`p1`</field><data>{\"commentRefs\":[],\"fieldData\":{\"img\":\"myImages.image1\"}}</data></shadow></value><value name=\"kind\"><shadow type=\"spritekind\"><field name=\"MEMBER\">Player1</field></shadow></value></block></value><next><block type=\"mp_moveWithButtons\"><mutation xmlns=\"http://www.w3.org/1999/xhtml\" _expanded=\"2\" _input_init=\"true\"></mutation><value name=\"player\"><shadow type=\"mp_playernumber\"><field name=\"num\">mp.PlayerNumber.One</field></shadow></value><value name=\"sprite\"><shadow type=\"variables_get\"><field name=\"VAR\" id=\",dddnum_7$A1y:^k5#mp\">player_1</field></shadow></value><value name=\"vx\"><shadow type=\"spriteSpeedPicker\"><field name=\"speed\">0</field></shadow></value><value name=\"vy\"><shadow type=\"spriteSpeedPicker\"><field name=\"speed\">150</field></shadow></value><next><block type=\"spritesetsetstayinscreen\"><value name=\"sprite\"><block type=\"variables_get\"><field name=\"VAR\" id=\",dddnum_7$A1y:^k5#mp\">player_1</field></block></value><value name=\"on\"><shadow type=\"toggleOnOff\"><field name=\"on\">true</field></shadow></value><next><block type=\"Sprite_blockCombine_set\"><field name=\"property\">Sprite.left@set</field><value name=\"mySprite\"><block type=\"variables_get\"><field name=\"VAR\" id=\",dddnum_7$A1y:^k5#mp\">player_1</field></block></value><value name=\"value\"><shadow type=\"math_number\"><field name=\"NUM\">15</field></shadow></value><next><block type=\"variables_set\"><field name=\"VAR\" id=\"Rceb^1E*6sc!PaCR0CUm\">player_2</field><value name=\"VALUE\"><shadow type=\"math_number\"><field name=\"NUM\">0</field></shadow><block type=\"spritescreate\"><value name=\"img\"><shadow type=\"screen_image_picker\"><field name=\"img\">assets.image`p2`</field><data>{\"commentRefs\":[],\"fieldData\":{\"img\":\"myImages.image2\"}}</data></shadow></value><value name=\"kind\"><shadow type=\"spritekind\"><field name=\"MEMBER\">Player2</field></shadow></value></block></value><next><block type=\"mp_moveWithButtons\"><mutation xmlns=\"http://www.w3.org/1999/xhtml\" _expanded=\"2\" _input_init=\"true\"></mutation><value name=\"player\"><shadow type=\"mp_playernumber\"><field name=\"num\">mp.PlayerNumber.Two</field></shadow></value><value name=\"sprite\"><shadow type=\"variables_get\"><field name=\"VAR\" id=\"Rceb^1E*6sc!PaCR0CUm\">player_2</field></shadow></value><value name=\"vx\"><shadow type=\"spriteSpeedPicker\"><field name=\"speed\">0</field></shadow></value><value name=\"vy\"><shadow type=\"spriteSpeedPicker\"><field name=\"speed\">150</field></shadow></value><next><block type=\"spritesetsetstayinscreen\"><value name=\"sprite\"><block type=\"variables_get\"><field name=\"VAR\" id=\"Rceb^1E*6sc!PaCR0CUm\">player_2</field></block></value><value name=\"on\"><shadow type=\"toggleOnOff\"><field name=\"on\">true</field></shadow></value><next><block type=\"Sprite_blockCombine_set\"><field name=\"property\">Sprite.right@set</field><value name=\"mySprite\"><block type=\"variables_get\"><field name=\"VAR\" id=\"Rceb^1E*6sc!PaCR0CUm\">player_2</field></block></value><value name=\"value\"><shadow type=\"math_number\"><field name=\"NUM\">145</field></shadow></value><next><block type=\"function_call\"><mutation name=\"launch_bow\" functionid=\"3$_x+@=KUWyLqHEz_O|R\"></mutation><next><block type=\"start_countdown_game\"><mutation xmlns=\"http://www.w3.org/1999/xhtml\" _expanded=\"0\" _input_init=\"true\"></mutation><field name=\"winType\">carnival.WinTypes.Multi</field><field name=\"winEffect\">effects.confetti</field><value name=\"myTime\"><shadow type=\"math_number\"><field name=\"NUM\">60</field></shadow></value></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></statement></block><block type=\"spritesoverlap\" x=\"728\" y=\"0\"><value name=\"HANDLER_DRAG_PARAM_sprite\"><shadow type=\"argument_reporter_custom\"><mutation typename=\"Sprite\"></mutation><field name=\"VALUE\">sprite</field></shadow></value><value name=\"kind\"><shadow type=\"spritekind\"><field name=\"MEMBER\">Player1</field></shadow></value><value name=\"HANDLER_DRAG_PARAM_otherSprite\"><shadow type=\"argument_reporter_custom\"><mutation typename=\"Sprite\"></mutation><field name=\"VALUE\">otherSprite</field></shadow></value><value name=\"otherKind\"><shadow type=\"spritekind\"><field name=\"MEMBER\">Bow</field></shadow></value><statement name=\"HANDLER\"><block type=\"spritedestroy\"><mutation xmlns=\"http://www.w3.org/1999/xhtml\" _expanded=\"2\" _input_init=\"true\"></mutation><field name=\"effect\">effects.confetti</field><value name=\"sprite\"><block type=\"argument_reporter_custom\"><mutation typename=\"Sprite\"></mutation><field name=\"VALUE\">otherSprite</field></block></value><value name=\"duration\"><shadow type=\"timePicker\"><field name=\"ms\">200</field></shadow></value><next><block type=\"mp_changePlayerStateBy\"><value name=\"player\"><shadow type=\"mp_playernumber\"><field name=\"num\">mp.PlayerNumber.One</field></shadow></value><value name=\"state\"><shadow type=\"mp_multiplayerstate\"><field name=\"MEMBER\">Score</field></shadow></value><value name=\"deltaValue\"><shadow type=\"math_number\"><field name=\"NUM\">1</field></shadow></value><next><block type=\"function_call\"><mutation name=\"launch_bow\" functionid=\"3$_x+@=KUWyLqHEz_O|R\"></mutation></block></next></block></next></block></statement></block><block type=\"spritesoverlap\" x=\"1480\" y=\"0\"><value name=\"HANDLER_DRAG_PARAM_sprite\"><shadow type=\"argument_reporter_custom\"><mutation typename=\"Sprite\"></mutation><field name=\"VALUE\">sprite</field></shadow></value><value name=\"kind\"><shadow type=\"spritekind\"><field name=\"MEMBER\">Player2</field></shadow></value><value name=\"HANDLER_DRAG_PARAM_otherSprite\"><shadow type=\"argument_reporter_custom\"><mutation typename=\"Sprite\"></mutation><field name=\"VALUE\">otherSprite</field></shadow></value><value name=\"otherKind\"><shadow type=\"spritekind\"><field name=\"MEMBER\">Bow</field></shadow></value><statement name=\"HANDLER\"><block type=\"spritedestroy\"><mutation xmlns=\"http://www.w3.org/1999/xhtml\" _expanded=\"2\" _input_init=\"true\"></mutation><field name=\"effect\">effects.confetti</field><value name=\"sprite\"><block type=\"argument_reporter_custom\"><mutation typename=\"Sprite\"></mutation><field name=\"VALUE\">otherSprite</field></block></value><value name=\"duration\"><shadow type=\"timePicker\"><field name=\"ms\">200</field></shadow></value><next><block type=\"mp_changePlayerStateBy\"><value name=\"player\"><shadow type=\"mp_playernumber\"><field name=\"num\">mp.PlayerNumber.Two</field></shadow></value><value name=\"state\"><shadow type=\"mp_multiplayerstate\"><field name=\"MEMBER\">Score</field></shadow></value><value name=\"deltaValue\"><shadow type=\"math_number\"><field name=\"NUM\">1</field></shadow></value><next><block type=\"function_call\"><mutation name=\"launch_bow\" functionid=\"3$_x+@=KUWyLqHEz_O|R\"></mutation></block></next></block></next></block></statement></block><block type=\"function_definition\" x=\"50\" y=\"690\"><mutation name=\"launch_bow\" functionid=\"3$_x+@=KUWyLqHEz_O|R\"></mutation><field name=\"function_name\">launch_bow</field><statement name=\"STACK\"><block type=\"variables_set\"><field name=\"VAR\" id=\"Wz_nj/6IVPvg{syI.w$X\">bow</field><value name=\"VALUE\"><shadow type=\"math_number\"><field name=\"NUM\">0</field></shadow><block type=\"spritescreate\"><value name=\"img\"><shadow type=\"screen_image_picker\"><field name=\"img\">assets.image`bow`</field><data>{\"commentRefs\":[],\"fieldData\":{\"img\":\"myImages.image4\"}}</data></shadow></value><value name=\"kind\"><shadow type=\"spritekind\"><field name=\"MEMBER\">Bow</field></shadow></value></block></value><next><block type=\"spritesetpos\"><value name=\"sprite\"><block type=\"variables_get\"><field name=\"VAR\" id=\"Wz_nj/6IVPvg{syI.w$X\">bow</field></block></value><value name=\"x\"><shadow type=\"positionPicker\"><field name=\"index\">80</field></shadow></value><value name=\"y\"><shadow type=\"positionPicker\"><field name=\"index\">90</field></shadow></value><next><block type=\"spritesetvel\"><value name=\"sprite\"><block type=\"variables_get\"><field name=\"VAR\" id=\"Wz_nj/6IVPvg{syI.w$X\">bow</field></block></value><value name=\"vx\"><shadow type=\"spriteSpeedPicker\"></shadow><block type=\"array_pickRandom\"><value name=\"list\"><block type=\"lists_create_with\"><mutation items=\"2\" horizontalafter=\"3\"></mutation><value name=\"ADD0\"><shadow type=\"math_number\"><field name=\"NUM\">-150</field></shadow></value><value name=\"ADD1\"><shadow type=\"math_number\"><field name=\"NUM\">150</field></shadow></value></block></value></block></value><value name=\"vy\"><shadow type=\"spriteSpeedPicker\"></shadow><block type=\"array_pickRandom\"><value name=\"list\"><block type=\"lists_create_with\"><mutation items=\"2\" horizontalafter=\"3\"></mutation><value name=\"ADD0\"><shadow type=\"math_number\"><field name=\"NUM\">75</field></shadow></value><value name=\"ADD1\"><shadow type=\"math_number\"><field name=\"NUM\">-75</field></shadow></value></block></value></block></value><next><block type=\"spritesetsetbounceonwall\"><value name=\"sprite\"><block type=\"variables_get\"><field name=\"VAR\" id=\"Wz_nj/6IVPvg{syI.w$X\">bow</field></block></value><value name=\"on\"><shadow type=\"toggleOnOff\"><field name=\"on\">true</field></shadow></value></block></next></block></next></block></next></block></statement></block></xml>",
616
- "main.ts": "",
617
- "pxt.json": "{\n \"name\": \"Holiday_2022_Assets\",\n \"description\": \"\",\n \"dependencies\": {\n \"device\": \"*\",\n \"carnival\": \"github:microsoft/arcade-carnival#v0.0.7\",\n \"arcade-mp\": \"github:riknoll/arcade-mp#v0.1.0\"\n },\n \"files\": [\n \"main.blocks\",\n \"main.ts\",\n \"README.md\",\n \"assets.json\",\n \"tilemap.g.jres\",\n \"tilemap.g.ts\",\n \"images.g.jres\",\n \"images.g.ts\"\n ],\n \"targetVersions\": {\n \"branch\": \"v1.11.37\",\n \"tag\": \"v1.11.37\",\n \"commits\": \"https://github.com/microsoft/pxt-arcade/commits/bf992d35ca2baeaa26d773aac7caad5a152c45aa\",\n \"target\": \"1.11.37\",\n \"pxt\": \"8.4.30\"\n },\n \"preferredEditor\": \"tsprj\"\n}\n",
556
+ "main.blocks": "<xml xmlns=\"https://developers.google.com/blockly/xml\"><block type=\"pxt-on-start\" x=\"0\" y=\"0\"></block></xml>",
557
+ "main.ts": "\n",
558
+ "pxt.json": "{\n \"name\": \"Holiday_2022_Assets\",\n \"description\": \"\",\n \"dependencies\": {\n \"device\": \"*\"\n },\n \"files\": [\n \"main.blocks\",\n \"main.ts\",\n \"assets.json\",\n \"tilemap.g.jres\",\n \"tilemap.g.ts\",\n \"images.g.jres\",\n \"images.g.ts\"\n ],\n \"targetVersions\": {\n \"branch\": \"v1.11.37\",\n \"tag\": \"v1.11.37\",\n \"commits\": \"https://github.com/microsoft/pxt-arcade/commits/bf992d35ca2baeaa26d773aac7caad5a152c45aa\",\n \"target\": \"1.11.37\",\n \"pxt\": \"8.4.30\"\n },\n \"preferredEditor\": \"tsprj\"\n}\n",
618
559
  "tilemap.g.jres": "{\n \"transparency16\": {\n \"data\": \"hwQQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==\",\n \"mimeType\": \"image/x-mkcd-f4\",\n \"tilemapTile\": true\n },\n \"*\": {\n \"mimeType\": \"image/x-mkcd-f4\",\n \"dataEncoding\": \"base64\",\n \"namespace\": \"myTiles\"\n }\n}",
619
560
  "tilemap.g.ts": "// Auto-generated code. Do not edit.\nnamespace myTiles {\n //% fixedInstance jres blockIdentity=images._tile\n export const transparency16 = image.ofBuffer(hex``);\n\n helpers._registerFactory(\"tile\", function(name: string) {\n switch(helpers.stringTrim(name)) {\n case \"transparency16\":return transparency16;\n }\n return null;\n })\n\n}\n// Auto-generated code. Do not edit.\n"
620
561
  }