pxt-arcade 1.7.3 → 1.7.4

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 (149) hide show
  1. package/built/target.js +69 -68
  2. package/built/target.json +69 -68
  3. package/built/targetlight.json +4 -4
  4. package/built/theme.json +2 -1
  5. package/docs/hour-of-code/educators-2021.html +366 -0
  6. package/docs/hour-of-code-2021.html +239 -140
  7. package/docs/hour-of-code.html +11 -11
  8. package/docs/index-ref.json +1 -1
  9. package/docs/multipart-tutorials.md +0 -8
  10. package/docs/projects/SUMMARY.md +3 -2
  11. package/docs/recipes.md +0 -7
  12. package/docs/skillmap/clicker/clicker1.md +7 -7
  13. package/docs/skillmap/clicker/clicker2.md +9 -9
  14. package/docs/skillmap/clicker/clicker3.md +8 -8
  15. package/docs/skillmap/clicker/clicker4.md +8 -8
  16. package/docs/skillmap/clicker/clicker4a.md +7 -7
  17. package/docs/skillmap/clicker/clicker5.md +3 -3
  18. package/docs/skillmap/clicker-themed/clickert1.md +8 -8
  19. package/docs/skillmap/clicker-themed/clickert2.md +10 -10
  20. package/docs/skillmap/clicker-themed/clickert3.md +8 -8
  21. package/docs/skillmap/clicker-themed/clickert4.md +8 -8
  22. package/docs/skillmap/collector/collector1.md +11 -11
  23. package/docs/skillmap/collector/collector1a.md +8 -8
  24. package/docs/skillmap/collector/collector2.md +8 -8
  25. package/docs/skillmap/collector/collector3.md +8 -8
  26. package/docs/skillmap/collector/collector3a.md +7 -7
  27. package/docs/skillmap/collector/collector4.md +8 -8
  28. package/docs/skillmap/collector/collector5.md +2 -2
  29. package/docs/skillmap/collector-themed/collectort1.md +14 -14
  30. package/docs/skillmap/collector-themed/collectort2.md +9 -9
  31. package/docs/skillmap/collector-themed/collectort3.md +11 -11
  32. package/docs/skillmap/collector-themed/collectort4.md +11 -11
  33. package/docs/skillmap/collector-themed/collectort4old.md +8 -8
  34. package/docs/skillmap/collector-themed/collectort5.md +2 -2
  35. package/docs/skillmap/educator-info/forest-map-info.md +8 -8
  36. package/docs/skillmap/educator-info/racer-map-info.md +105 -0
  37. package/docs/skillmap/educator-info/simple-shark-map-info.md +101 -0
  38. package/docs/skillmap/forest/forest1.md +1 -69
  39. package/docs/skillmap/forest/forest2.md +3 -67
  40. package/docs/skillmap/forest/forest3.md +1 -174
  41. package/docs/skillmap/forest/forest4.md +2 -336
  42. package/docs/skillmap/forest/forest5.md +1 -396
  43. package/docs/skillmap/forest/forest6.md +6 -372
  44. package/docs/skillmap/forest.md +2 -2
  45. package/docs/skillmap/interface/activity1.md +14 -14
  46. package/docs/skillmap/jungle/jungle1.md +48 -28
  47. package/docs/skillmap/jungle/jungle2.md +50 -26
  48. package/docs/skillmap/jungle/jungle3.md +48 -27
  49. package/docs/skillmap/jungle/jungle4.md +76 -58
  50. package/docs/skillmap/jungle/jungle5.md +31 -25
  51. package/docs/skillmap/jungle/jungle6.md +34 -28
  52. package/docs/skillmap/jungle/jungle7.md +36 -24
  53. package/docs/skillmap/jungle/jungle8.md +27 -25
  54. package/docs/skillmap/jungle.md +7 -3
  55. package/docs/skillmap/long-shark.md +119 -0
  56. package/docs/skillmap/racer.md +7 -7
  57. package/docs/skillmap/rockstar/rockstar1.md +32 -13
  58. package/docs/skillmap/rockstar/rockstar2.md +43 -25
  59. package/docs/skillmap/rockstar/rockstar3.md +43 -25
  60. package/docs/skillmap/rockstar.md +3 -1
  61. package/docs/skillmap/shark/shark1-simple.md +151 -0
  62. package/docs/skillmap/shark/shark2-simple.md +203 -0
  63. package/docs/skillmap/shark/shark3-simple.md +204 -0
  64. package/docs/skillmap/shark/shark4-simple.md +246 -0
  65. package/docs/skillmap/shark/shark4a-simple.md +244 -0
  66. package/docs/skillmap/shark.md +25 -58
  67. package/docs/skillmap/space/space1.md +62 -28
  68. package/docs/skillmap/space/space2.md +33 -24
  69. package/docs/skillmap/space/space3.md +85 -68
  70. package/docs/skillmap/space/space4.md +95 -64
  71. package/docs/skillmap/space/space4a.md +32 -24
  72. package/docs/skillmap/space/space5.md +77 -41
  73. package/docs/skillmap/space/space6.md +56 -78
  74. package/docs/skillmap/space.md +8 -5
  75. package/docs/skillmap/story/card.md +6 -6
  76. package/docs/skillmap/story/card2.md +6 -6
  77. package/docs/skillmap/story/story1.md +7 -7
  78. package/docs/skillmap/story/story2.md +11 -11
  79. package/docs/skillmap/story/story3.md +10 -10
  80. package/docs/skillmap/story/story4.md +10 -10
  81. package/docs/skillmap/zoo/zoo1.md +31 -16
  82. package/docs/skillmap/zoo/zoo2.md +45 -30
  83. package/docs/skillmap/zoo/zoo2a.md +51 -36
  84. package/docs/skillmap/zoo/zoo3.md +8 -7
  85. package/docs/skillmap/zoo/zoo4.md +61 -32
  86. package/docs/skillmap/zoo/zoo5.md +41 -31
  87. package/docs/skillmap/zoo.md +2 -2
  88. package/docs/skillmaps.md +20 -4
  89. package/docs/static/experiments/accessibleblocks.png +0 -0
  90. package/docs/static/experiments/blockserrorlist.png +0 -0
  91. package/docs/static/hour-of-code/2021/beginner-skillmap.png +0 -0
  92. package/docs/static/hour-of-code/2021/favicon.png +0 -0
  93. package/docs/static/hour-of-code/2021/forest-skillmap-game.gif +0 -0
  94. package/docs/static/hour-of-code/2021/global-game-jam.png +0 -0
  95. package/docs/static/hour-of-code/2021/header.gif +0 -0
  96. package/docs/static/hour-of-code/2021/hoc-2020.png +0 -0
  97. package/docs/static/hour-of-code/2021/hoc-card.png +0 -0
  98. package/docs/static/hour-of-code/2021/microbit.png +0 -0
  99. package/docs/static/hour-of-code/2021/styles.css +269 -21
  100. package/docs/static/skillmap/assets/my-assets-three.png +0 -0
  101. package/docs/static/skillmap/backgrounds/jungle-bg.png +0 -0
  102. package/docs/static/skillmap/backgrounds/jungle-map.png +0 -0
  103. package/docs/static/skillmap/backgrounds/rock-map.png +0 -0
  104. package/docs/static/skillmap/backgrounds/rockstar-card.gif +0 -0
  105. package/docs/static/skillmap/backgrounds/space-comp.png +0 -0
  106. package/docs/static/skillmap/backgrounds/space.png +0 -0
  107. package/docs/static/skillmap/certificates/forest-cert.pdf +0 -0
  108. package/docs/static/skillmap/certificates/forest-cert.png +0 -0
  109. package/docs/static/skillmap/certificates/jungle-cert.pdf +0 -0
  110. package/docs/static/skillmap/certificates/jungle-cert.png +0 -0
  111. package/docs/static/skillmap/certificates/rockstar-cert.pdf +0 -0
  112. package/docs/static/skillmap/certificates/rockstar-cert.png +0 -0
  113. package/docs/static/skillmap/certificates/shark-cert.pdf +0 -0
  114. package/docs/static/skillmap/certificates/shark-cert.png +0 -0
  115. package/docs/static/skillmap/certificates/space-cert.pdf +0 -0
  116. package/docs/static/skillmap/certificates/space-cert.png +0 -0
  117. package/docs/static/skillmap/racer/racer1.gif +0 -0
  118. package/docs/static/skillmap/racer/racer2.gif +0 -0
  119. package/docs/static/skillmap/racer/racer3.gif +0 -0
  120. package/docs/static/skillmap/rockstar/rockstar1.gif +0 -0
  121. package/docs/static/skillmap/rockstar/rockstar2.gif +0 -0
  122. package/docs/static/skillmap/rockstar/rockstar3.gif +0 -0
  123. package/docs/static/skillmap/shark/shark1-simple.gif +0 -0
  124. package/docs/static/skillmap/shark/shark4a-simple.gif +0 -0
  125. package/docs/static/skillmap/zoo/overlaps-food-sprite.gif +0 -0
  126. package/docs/tutorials/hundred.md +400 -0
  127. package/package.json +1 -1
  128. package/pxtarget.json +2 -1
  129. package/targetconfig.json +4 -1
  130. package/docs/recipes/wonder-woman-1984/01-maze.md +0 -291
  131. package/docs/recipes/wonder-woman-1984/02-artifact.md +0 -70
  132. package/docs/recipes/wonder-woman-1984/03-enemies.md +0 -65
  133. package/docs/skillmap/forest/forest9.md +0 -714
  134. package/docs/static/hour-of-code/ww-maze.png +0 -0
  135. package/docs/static/recipes/wonder-woman-1984/artifact-preview.png +0 -0
  136. package/docs/static/recipes/wonder-woman-1984/artifacts-location.gif +0 -0
  137. package/docs/static/recipes/wonder-woman-1984/draw-maze-backup.png +0 -0
  138. package/docs/static/recipes/wonder-woman-1984/draw-walls-backup.png +0 -0
  139. package/docs/static/recipes/wonder-woman-1984/end-position.png +0 -0
  140. package/docs/static/recipes/wonder-woman-1984/enemies-location.gif +0 -0
  141. package/docs/static/recipes/wonder-woman-1984/enemies-preview.png +0 -0
  142. package/docs/static/recipes/wonder-woman-1984/fill-maze.gif +0 -0
  143. package/docs/static/recipes/wonder-woman-1984/fill-walls.gif +0 -0
  144. package/docs/static/recipes/wonder-woman-1984/wonder-woman3.png +0 -0
  145. package/docs/static/recipes/wonder-woman-1984/ww-splash3.gif +0 -0
  146. package/docs/static/recipes/wonder-woman-1984/ww-splash3.mp4 +0 -0
  147. package/docs/static/ww84-background.png +0 -0
  148. package/docs/static/ww84-header.png +0 -0
  149. package/docs/ww84.html +0 -276
@@ -36,7 +36,7 @@ game.splash("These blocks are in your workspace!")
36
36
 
37
37
  ### @explicitHints true
38
38
 
39
- ## Introduction @unplugged
39
+ ## {Introduction @unplugged}
40
40
 
41
41
  ![Psyched Monkey](/static/skillmap/interface/monkey.png "Psyched Monkey is Ready!" )
42
42
 
@@ -50,7 +50,7 @@ Complete this tutorial to learn how to:
50
50
 
51
51
  Before you know it, you'll have an arcade game of your very own!
52
52
 
53
- ## step 1
53
+ ## {step 1}
54
54
 
55
55
  **⭐Welcome⭐**
56
56
 
@@ -69,7 +69,7 @@ When you're ready to move to the next step, click **[ > Next]** to continue.
69
69
  ---
70
70
 
71
71
 
72
- ## step 2
72
+ ## {step 2}
73
73
 
74
74
  This box is where you'll find information for each step.
75
75
 
@@ -83,7 +83,7 @@ click the lightbulb to the right for an extra hint.
83
83
  ```
84
84
 
85
85
 
86
- ## Using the workspace
86
+ ## {Using the workspace}
87
87
 
88
88
  Your [__*workspace*__](#workIt "The area where you build code") is the area
89
89
  below the instructions where you'll connect blocks to build your program.
@@ -104,7 +104,7 @@ game.splash("I like bananas!")
104
104
  ```
105
105
 
106
106
 
107
- ## Meet the Blocks @unplugged
107
+ ## {Meet the Blocks @unplugged}
108
108
 
109
109
  Blocks can be dragged out from the [__*toolbox*__](#tools "The strip to the left of your workspace that lists block categories."),
110
110
 
@@ -116,7 +116,7 @@ Keep going to learn more about blocks.
116
116
 
117
117
 
118
118
 
119
- ## Your Toolbox
119
+ ## {Your Toolbox}
120
120
 
121
121
  **Blocks you need won't always be in the workspace to start.**
122
122
 
@@ -134,7 +134,7 @@ game.splash(" ")
134
134
  This block adds a [__*splash screen*__](#splasht "A full-screen message that shows while a program or level is loading") to your project.
135
135
 
136
136
 
137
- ## Your Toolbox 2
137
+ ## {Your Toolbox 2}
138
138
 
139
139
  **Let's see how this works**
140
140
 
@@ -152,7 +152,7 @@ game.splash("My monkey is better than yours")
152
152
 
153
153
 
154
154
 
155
- ## The Exception
155
+ ## {The Exception}
156
156
 
157
157
  Every rule has an exception, so let's look at a block
158
158
  that doesn't match its category.
@@ -206,7 +206,7 @@ let mySprite = sprites.create(img`
206
206
  ```
207
207
 
208
208
 
209
- ## Container Blocks
209
+ ## {Container Blocks}
210
210
 
211
211
  **Now let's look at different types of blocks and how to use them.**
212
212
 
@@ -233,7 +233,7 @@ controller.A.onEvent(ControllerButtonEvent.Pressed, function () {
233
233
  })
234
234
  ```
235
235
 
236
- ## Standard Blocks
236
+ ## {Standard Blocks}
237
237
 
238
238
  Next, there are [__*standard blocks*__](#sBlockIt "Single line blocks that make up the majority of most programs").
239
239
  Standard blocks are single-line blocks with notches at the top and bottom that
@@ -267,7 +267,7 @@ controller.A.onEvent(ControllerButtonEvent.Pressed, function () {
267
267
 
268
268
 
269
269
 
270
- ## Value Blocks
270
+ ## {Value Blocks}
271
271
 
272
272
  Finally, we have [__*value blocks*__](#aBlockIt "special pieces that provide values for other blocks").
273
273
  Value blocks are special pieces that add information to other
@@ -300,7 +300,7 @@ controller.A.onEvent(ControllerButtonEvent.Pressed, function () {
300
300
 
301
301
 
302
302
 
303
- ## Play Time
303
+ ## {Play Time}
304
304
 
305
305
  **🕹️ Time to play 🕹️**
306
306
 
@@ -313,7 +313,7 @@ Click it again to launch your effects!
313
313
 
314
314
 
315
315
 
316
- ## Putting it Together
316
+ ## {Putting it Together}
317
317
 
318
318
  **🎨 Now get creative 🎨**
319
319
 
@@ -329,7 +329,7 @@ it's behaving the way you want it to!
329
329
 
330
330
 
331
331
 
332
- ## Conclusion
332
+ ## {Conclusion}
333
333
 
334
334
  **🎈 Congratulations 🎈**
335
335
 
@@ -1,4 +1,4 @@
1
- # Simple Platformer
1
+ # Moving Monkey
2
2
 
3
3
 
4
4
  ## Welcome @showdialog
@@ -15,19 +15,19 @@ This kind of game peeks in on the action from the side, and relies on a [__*tile
15
15
 
16
16
 
17
17
 
18
- ## Step 2
18
+ ## 2. See the Scene
19
19
 
20
20
  **Your scene has already been set!**
21
21
 
22
22
  ---
23
23
 
24
- Look at your workspace to see that the **background image** and **tilemap** have already been set for the scene in this activity.
24
+ - :binoculars: Look at your workspace to see that the **background image** and **tilemap** have already been set for the scene in this activity.
25
25
 
26
- 💡 Both blocks have been added to the ``||loops: on start||`` container so they load as soon as the game starts.
26
+ _💡 Both blocks have been added to the ``||loops: on start||`` container so they load as soon as the game starts.)_
27
27
 
28
28
 
29
29
 
30
- ## Step 3 - We need a HERO
30
+ ## 3. We need a HERO
31
31
 
32
32
  **🐒 We need a hero 🐒**
33
33
 
@@ -35,9 +35,13 @@ Our moving characters are called [__*sprites*__](#sprote "2-D images that move o
35
35
 
36
36
  ---
37
37
 
38
- From the ``||sprites:Sprites||`` category, drag ``||variables:set [mySprite] to sprite [ ] of kind [Player]||`` to **the end** of the ``||loops:on start||`` container.
38
+ - :paper plane: From the ``||sprites:Sprites||`` category, drag ``||variables:set [mySprite] to sprite [ ] of kind [Player]||`` to **the end** of the ``||loops:on start||`` container.
39
39
 
40
- To choose a standing monkey, click the empty grey box, then toggle to **My Assets** and click the monkey named **stand**.
40
+ _💡 Having trouble finding the block you need? Look to the left of the instructions for the icon of the toolbox category where your block lives!_
41
+
42
+ - :paint brush: To choose a standing monkey, click the empty grey box, then toggle to **My Assets** and click the monkey named **stand**.
43
+
44
+ ![Toggle to My Assets](/static/skillmap/assets/my-assets-three.png "toggle to the My Assets Window")
41
45
 
42
46
 
43
47
  ```blocks
@@ -48,16 +52,18 @@ let mySprite = sprites.create(assets.image`stand`, SpriteKind.Player)
48
52
  ```
49
53
 
50
54
 
51
- ## Step 4 - Control the Player
55
+ ## 4. Control the Player
52
56
 
53
57
  **↔️ Time to get the player moving ↔️**
54
58
 
55
59
  ---
56
60
 
57
- From ``||controller:Controller||``, drag ``||controller:move [mySprite] with buttons ⊕||``
61
+ - :game: Drag ``||controller:move [mySprite] with buttons ➕||``
58
62
  to **the end** of the ``||loops:on start||`` container.
59
63
 
60
- Press the button to the right of the block and change the [__*vy*__](#whatVY "vertical velocity") (up/down speed)
64
+ _💡 Remember, the icon to the left of the instructions shows the same icon as the toolbox category for the block you need._
65
+
66
+ - :mouse pointer: Press the ➕ button to the right of the block and change the [__*vy*__](#whatVY "vertical velocity") (up/down speed)
61
67
  argument to **0** so that the player won't hover up or down when you use the joypad.
62
68
 
63
69
 
@@ -70,16 +76,18 @@ controller.moveSprite(mySprite, 100, 0)
70
76
  ```
71
77
 
72
78
 
73
- ## Step 5 - Try It
79
+ ## 5. Try It
74
80
 
75
- **🕹️ Be sure to give your game a try on the game screen 🕹️ **
81
+ **Click the Game Window Tab (Above)**
82
+
83
+ ![Click the Game Window tab to see your scene. ](/static/skillmap/assets/game-win-tab.png "Don't forget to look at your game!")
76
84
 
77
85
  ---
78
86
 
79
87
  How do you like it? Feel like making a few more changes?
80
88
 
81
89
 
82
- ## Step 6 - Add gravity
90
+ ## 6. Add gravity
83
91
 
84
92
  **To make the game feel more realistic, it needs gravity.**
85
93
 
@@ -88,11 +96,14 @@ to "pull down" on the sprite.
88
96
 
89
97
  ---
90
98
 
91
- ► From ``||sprites:Sprites||``, drag ``||sprites:set [mySprite] [x] to [0]||`` to **the end** of the ``||loops:on start||`` container.
99
+ - :paper plane: Drag
100
+ ``||sprites:set [mySprite] [x] to [0]||``
101
+ to **the end** of the
102
+ ``||loops:on start||`` container.
92
103
 
93
- Click the dropdown to change **x** to **ay (acceleration y)**.
104
+ - :mouse pointer: Click the dropdown to change **x** to **ay (acceleration y)**.
94
105
 
95
- To pull the sprite toward the ground, replace **0** with **500**.
106
+ - :mouse pointer: To pull the sprite toward the ground, replace **0** with **500**.
96
107
 
97
108
  ```blocks
98
109
  scene.setBackgroundImage(assets.image`background`)
@@ -103,14 +114,16 @@ controller.moveSprite(mySprite, 100, 0)
103
114
  mySprite.ay = 500
104
115
  ```
105
116
 
106
- ## Step 7 - Follow with Camera
117
+ ## 7. Follow with Camera
107
118
 
108
119
  **Oops! The monkey falls off-screen!**
109
120
 
110
121
  ---
111
122
 
112
- To keep the monkey in sight, open ``||scene:Scene||`` and drag
113
- ``||scene:camera follow sprite [mySprite]||`` to **the end** of the ``||loops:on start||`` container.
123
+ - :tree: To keep the monkey in sight, drag
124
+ ``||scene:camera follow sprite [mySprite]||``
125
+ to **the end** of the
126
+ ``||loops:on start||`` container.
114
127
 
115
128
  ```blocks
116
129
  scene.setBackgroundImage(assets.image`background`)
@@ -124,23 +137,28 @@ scene.cameraFollowSprite(mySprite)
124
137
  ```
125
138
 
126
139
 
127
- ## Step 8 - Look Again
140
+ ## 8. Look Again
128
141
 
129
- **🕹️ Look at the game window to make sure you can see the monkey land on a platform. 🕹️ **
142
+ **🕹️ Look at the game window to make sure you can see the monkey land on a platform.**
130
143
 
131
144
 
132
145
 
133
- ## Step 9 - Jump
146
+ ## 9. Jump
134
147
 
135
148
  Now that the monkey has landed safely, we can make it jump using the **up** arrow!
136
149
 
137
150
  ---
138
151
 
139
- From ``||controller:Controller||``, drag the ``||controller:on [A] button [pressed]||`` container into an empty area of the workspace.
152
+ - :game: Drag the
153
+ ``||controller:on [A] button [pressed]||``
154
+ container into an empty area of the workspace.
140
155
 
141
- Click the **A** option and change it to **up**.
156
+ - :mouse pointer: Click the **A** option and change it to **up**.
142
157
 
143
- Inside of the ``||controller:on [up] button [pressed]||`` container, add ``||sprites:make [mySprite] gravity jump||``.
158
+ - :paper plane: Inside of the
159
+ ``||controller:on [up] button [pressed]||``
160
+ container, add
161
+ ``||sprites:make [mySprite] gravity jump||``.
144
162
 
145
163
  ```blocks
146
164
  controller.up.onEvent(ControllerButtonEvent.Pressed, function () {
@@ -152,12 +170,14 @@ controller.up.onEvent(ControllerButtonEvent.Pressed, function () {
152
170
 
153
171
 
154
172
 
155
- ## Done
173
+ ## Finale
156
174
 
157
- 🔥 **That's it! Now give your game a try!** 🔥
175
+ 🔥 **That's it! Now give your game a try!** 🔥
158
176
  Can you jump around between platforms?
159
177
 
160
- Take a spin through the level, then click **Done** to return to the main skillmap and go on to the next activity!
178
+ ---
179
+
180
+ Take a spin through the level, then click **Done** to return to the main skillmap and go on to the next activity where we'll show you how to add **good** and **bad** tiles!
161
181
 
162
182
 
163
183
  ```package
@@ -9,9 +9,9 @@
9
9
 
10
10
 
11
11
 
12
- ## Step 2 -Try It!
12
+ ## 2. Try It!
13
13
 
14
- **🕹️ First, move your sprite around in the game window 🕹️**
14
+ **🕹️ First, move your sprite around in the game window.**
15
15
 
16
16
  ---
17
17
 
@@ -19,19 +19,24 @@ Keep in mind which piece of code controls each action!
19
19
 
20
20
 
21
21
 
22
- ## Step 3 - Game Over Pt. 1
22
+ ## 3. Game Over
23
23
 
24
- **💀 Time for danger 💀 **
24
+ **Time for danger**
25
+ 💀💀💀
25
26
 
26
- When the player overlaps the _poison pit_ tile, let's trigger a "GAME OVER" message.
27
+ When the player overlaps a _poison pit_ tile, let's trigger a "GAME OVER" message.
27
28
 
28
29
  ---
29
30
 
30
- From ``||scene:Scene||``, drag the ``||scene:on [sprite] of kind [Player] overlaps [ ] at [location]||`` container into an empty area of the workspace.
31
+ - :tree: Drag the
32
+ ``||scene:on [sprite] of kind [Player] overlaps [ ] at [location]||``
33
+ container into an empty area of the workspace.
31
34
 
32
- Click the checkerboard image and change it to the **poison pit** tile.
35
+ - :paint brush: Click the checkerboard image and change it to the **poison pit** tile.
33
36
 
34
- From ``||game:Game||``, snap a ``||game:game over <LOSE>||`` block into the new container.
37
+ - :circle: Snap a
38
+ ``||game:game over <LOSE>||``
39
+ block into the new container.
35
40
 
36
41
 
37
42
  ```blocks
@@ -40,9 +45,9 @@ scene.onOverlapTile(SpriteKind.Player, assets.tile`poison pit`, function (sprite
40
45
  })
41
46
  ```
42
47
 
43
- ## Try It!
48
+ ## 4. Try It Again!
44
49
 
45
- **🕹️ Give it a try in the game window 🕹️**
50
+ **Give it a try in the game window**
46
51
 
47
52
  ---
48
53
 
@@ -50,19 +55,22 @@ When your monkey lands on the poison pit, it should end the game as a loss.
50
55
 
51
56
 
52
57
 
53
- ## You Win Pt. 1
58
+ ## 5. You Win
54
59
 
55
- **🎈 We have a way to lose, let's add a way to win 🎈**
60
+ **We have a way to lose, let's add a way to win!**
56
61
 
57
62
  ---
58
63
 
59
64
 
60
- Drag another ``||scene:on [sprite] of kind [Player] overlaps [ ] at [location]||``
65
+ - :tree: Drag another
66
+ ``||scene:on [sprite] of kind [Player] overlaps [ ] at [location]||``
61
67
  container into the workspace.
62
68
 
63
- This time, change the checkerboard to the **chest1** tile.
69
+ - :paint brush: This time, change the checkerboard to the **chest1** tile.
64
70
 
65
- Snap a ``||game:game over <LOSE>||`` block into the new container and toggle
71
+ - :circle: Snap a
72
+ ``||game:game over <LOSE>||``
73
+ block into the new container and toggle
66
74
  the **`<LOSE>`** switch to **`<WIN>`**!
67
75
 
68
76
 
@@ -73,20 +81,30 @@ scene.onOverlapTile(SpriteKind.Player, assets.tile`chest1`, function (sprite, lo
73
81
  })
74
82
  ```
75
83
 
84
+ ## 6. Try It Again, Again!
76
85
 
77
- ## You Earned Points pt. 1
86
+ **Give it a try in the game window**
78
87
 
79
- **💯 Award points when the player collects an orange bauble 💯**
88
+ ---
89
+
90
+ It's easy to lose...but impossible to win! How do you get over the pits?
91
+
92
+
93
+
94
+ ## 7. Add Points 1
95
+
96
+ **💯 Award points when the player collects an orange bauble.**
80
97
 
81
98
  ---
82
99
 
83
100
 
84
- Drag another ``||scene:on [sprite] of kind [Player] overlaps [ ] at [location]||``
101
+ - :tree: Drag another
102
+ ``||scene:on [sprite] of kind [Player] overlaps [ ] at [location]||``
85
103
  container into the workspace.
86
104
 
87
- Change the checkerboard to the orange sphere tile called **orange bauble**.
105
+ - :paint brush: Change the checkerboard to the orange sphere tile called **orange bauble**.
88
106
 
89
- From ``||info:Info||``, snap a ``||info:change score by [1]||`` block into the new container.
107
+ - :id card: Snap a ``||info:change score by [1]||`` block into the new container.
90
108
 
91
109
 
92
110
  ```blocks
@@ -95,7 +113,7 @@ scene.onOverlapTile(SpriteKind.Player, assets.tile`orange bauble`, function (spr
95
113
  })
96
114
  ```
97
115
 
98
- ## Try It Too!
116
+ ## 8. Play!
99
117
 
100
118
  **🕹️ Play your game and collect an orange bauble 🕹️**
101
119
 
@@ -104,15 +122,21 @@ scene.onOverlapTile(SpriteKind.Player, assets.tile`orange bauble`, function (spr
104
122
  Uh oh! You get WAY too many points when you touch an orange bauble. We can fix that in the next step.
105
123
 
106
124
 
107
- ## You Earned Points pt. 2
125
+ ## 9. Add Points 2
108
126
 
109
127
  **Replace the baubles you collect with an empty tile.**
110
128
 
111
129
  ---
112
130
 
113
- From ``||scene:Scene||``, drag ``||scene:set [ ] at tilemap col [0] row [0]||`` into **the top** of the ``||scene:on [sprite] of kind [Player] overlaps [orange bauble] at [location]||`` container.
131
+ - :tree: Drag
132
+ ``||scene:set [ ] at tilemap col [0] row [0]||``
133
+ into **the top** of the
134
+ ``||scene:on [sprite] of kind [Player] overlaps [orange bauble] at [location]||`` container.
114
135
 
115
- Replace ``||scene:tilemap col [0] row [0]||`` with the ``||variables:location||`` value from the top of the **Player overlaps orange bauble** container.
136
+ - :mouse pointer: Replace
137
+ ``||scene:tilemap col [0] row [0]||``
138
+ with the ``||variables:location||``
139
+ value from the top of the **Player overlaps orange bauble** container.
116
140
 
117
141
  ![Share your location](/static/skillmap/jungle/jungle-location.gif "Grab the variable from the overlap container")
118
142
 
@@ -126,13 +150,13 @@ scene.onOverlapTile(SpriteKind.Player, assets.tile`orange bauble`, function (spr
126
150
 
127
151
 
128
152
 
129
- ## Finished
153
+ ## Finale
130
154
 
131
155
  **Now we have a simple platformer that has a way to win, a way to lose, and a way to collect points.**
132
156
 
133
157
  ---
134
158
 
135
- When you're done playing with your game, click **Done** to return to the main page to learn how to make it even more exciting.
159
+ When you're done playing with your game, click **Done** to return to the main skillmap and keep going so we can show you how to win the game!
136
160
 
137
161
 
138
162
 
@@ -10,9 +10,9 @@ We need a way to pass the poison pits!
10
10
 
11
11
 
12
12
 
13
- ## Step 2 - Try It!
13
+ ## 2. Try It!
14
14
 
15
- **🕹️ First, play the game in the game window 🕹️**
15
+ **🕹️ First, play the game in the game window.**
16
16
 
17
17
  ---
18
18
 
@@ -20,18 +20,24 @@ Can you remember which piece of code controls each action?
20
20
 
21
21
 
22
22
 
23
- ## Step 3 - Adding Block Walls
23
+ ## 3. Adding Block Walls
24
24
 
25
- **You know what would help us get over those pits?**
26
- We need some well-placed platforms! Let's add a crate beneath the player when the A button is pressed.
25
+ **You know what would help us get over those pits?**
26
+ We need some well-placed platforms! Let's add a crate beneath the player when the (A) button is pressed.
27
27
 
28
28
  ---
29
29
 
30
- From ``||controller:Controller||``, drag the ``||controller:on [A] button [pressed]||`` container into an empty area of the workspace.
30
+ - :game: Drag the
31
+ ``||controller:on [A] button [pressed]||``
32
+ container into an empty area of the workspace.
31
33
 
32
- Set a wall by going to the ``||scene:Scene||`` category and dragging ``||scene:set wall <OFF> at tilemap col [0] row [0]||`` into the empty ``||controller:on [A] button [pressed]||`` container.
34
+ - :tree: Set a wall by dragging
35
+ ``||scene:set wall <OFF> at tilemap col [0] row [0]||``
36
+ into the empty
37
+ ``||controller:on [A] button [pressed]||``
38
+ container.
33
39
 
34
- Toggle `<OFF>` to `<ON>`.
40
+ - :mouse pointer: Toggle `<OFF>` to `<ON>`.
35
41
 
36
42
 
37
43
  ```blocks
@@ -40,14 +46,20 @@ controller.A.onEvent(ControllerButtonEvent.Pressed, function () {
40
46
  })
41
47
  ```
42
48
 
43
- ## Step 4 - Adding Block Walls, Cont.
49
+ ## 4. Block Walls, Cont.
44
50
 
45
51
 
46
- Make sure the new wall ends up in the right place by opening ``||tiles:Tilemaps||`` and dragging ``||tiles:location [left] of [location]||`` in to replace ``||scene:tilemap col [0] row [0]||``.
52
+ - :map: Make sure the new wall ends up in the right place by dragging
53
+ ``||tiles:location [left] of [location]||``
54
+ in to replace
55
+ ``||scene:tilemap col [0] row [0]||``.
47
56
 
48
- Click the word **left** to open the dropdown menu, and change the direction to **bottom**.
57
+ - :mouse pointer: Click the word **left** to open the dropdown menu, and change the direction to **bottom**.
49
58
 
50
- Create the wall **under** your sprite by opening ``||tiles:Tilemaps||`` and dragging ``||tiles:location of [mySprite]||`` in to replace ``||variables:location||``.
59
+ - :map: Create the wall **under** your sprite by dragging
60
+ ``||tiles:location of [mySprite]||``
61
+ in to replace
62
+ ``||variables:location||``.
51
63
 
52
64
 
53
65
  ```blocks
@@ -59,9 +71,9 @@ controller.A.onEvent(ControllerButtonEvent.Pressed, function () {
59
71
 
60
72
 
61
73
 
62
- ## Try It!
74
+ ## 5. Try It!
63
75
 
64
- **🕹️ Give it a try in the game window 🕹️**
76
+ **🕹️ Give it a try in the game window.**
65
77
 
66
78
  ---
67
79
 
@@ -69,16 +81,20 @@ Try jumping while you press the (A) button. Your monkey should continue to hover
69
81
 
70
82
 
71
83
 
72
- ## Step 5 - Adding Block Tiles
84
+ ## 6. Adding Block Tiles
73
85
 
74
- **Where did my brick go??**
86
+ **Where did my brick go??**
75
87
  The walls are great, but it's hard to remember where they are. Let's add special tiles over them so we can find them again later.
76
88
 
77
89
  ---
78
90
 
79
- Set a tile by going to the ``||scene:Scene||`` category and dragging ``||scene:set [ ] at tilemap col [0] row [0]||`` into **the bottom** of the ``||controller:on [A] button [pressed]||`` container.
91
+ - :tree: Set a tile by dragging
92
+ ``||scene:set [ ] at tilemap col [0] row [0]||``
93
+ into **the bottom** of the
94
+ ``||controller:on [A] button [pressed]||``
95
+ container.
80
96
 
81
- Click the empty square and choose the crate called **bounce**.
97
+ - :paint brush: Click the empty square and choose the crate called **bounce**.
82
98
 
83
99
 
84
100
  ```blocks
@@ -91,14 +107,19 @@ controller.A.onEvent(ControllerButtonEvent.Pressed, function () {
91
107
  })
92
108
  ```
93
109
 
94
- ## Step 6 - Adding Block Tiles, Cont.
110
+ ## 7. Adding Block Tiles, Cont.
95
111
 
96
112
 
97
- Make sure the new tile ends up in the right place by opening ``||tiles:Tilemaps||`` and dragging ``||tiles:location [left] of [location]||`` in to replace ``||scene:tilemap col [0] row [0]||``.
113
+ - :map: Make sure the new tile ends up in the right place by dragging
114
+ ``||tiles:location [left] of [location]||``
115
+ in to replace
116
+ ``||scene:tilemap col [0] row [0]||``.
98
117
 
99
- Click the word **left** to open the dropdown menu, and change the direction to **bottom**.
118
+ - :mouse pointer: Click the word **left** to open the dropdown menu, and change the direction to **bottom**.
100
119
 
101
- As before, create the tile **under** your sprite by opening ``||tiles:Tilemaps||`` and dragging ``||tiles:location of [mySprite]||`` in to replace ``||variables:location||``.
120
+ - :map: As before, create the tile **under** your sprite by dragging
121
+ ``||tiles:location of [mySprite]||``
122
+ in to replace ``||variables:location||``.
102
123
 
103
124
 
104
125
  ```blocks
@@ -111,9 +132,9 @@ controller.A.onEvent(ControllerButtonEvent.Pressed, function () {
111
132
  ```
112
133
 
113
134
 
114
- ## Try It!
135
+ ## 8. Try It!
115
136
 
116
- **🕹️ Now try it in the game window 🕹️**
137
+ **🕹️ Now try it in the game window.**
117
138
 
118
139
  ---
119
140
 
@@ -122,13 +143,13 @@ Now you can set your own blocks in-mid air to help you over the poison pit!
122
143
 
123
144
 
124
145
 
125
- ## Finished
146
+ ## Finale
126
147
 
127
- **Play your game and see how many points you can get.**
148
+ **Play your game and see how many points you can get!**
128
149
 
129
150
  ---
130
151
 
131
- When you're done playing, click **Done** to return to the main page to learn how to **break** tiles.
152
+ When you're done playing, click **Done** to return to the main skillmap and continue to the next level where we will show you how to **break** tiles.
132
153
 
133
154
 
134
155