@@ -63,84 +63,84 @@ const _LESSON_SLUG_ALIASES := {
6363 "lesson-28-specifying-types/lesson.tres" : "specifying-types" ,
6464
6565 # legacy practices
66- "lesson-1-what-code-is-like/practice-55916.tres" : "what-code-is-like/$ try-your-first-code" ,
67- "lesson-2-your-first-error/practice-85733.tres" : "your-first-error/$ fix-your-first-error" ,
66+ "lesson-1-what-code-is-like/practice-55916.tres" : "what-code-is-like/try-your-first-code" ,
67+ "lesson-2-your-first-error/practice-85733.tres" : "your-first-error/fix-your-first-error" ,
6868
69- "lesson-3-standing-on-shoulders-of-giants/practice-QiGjB7tK.tres" : "standing-on-shoulders-of-giants/$ make-the-character-visible" ,
70- "lesson-3-standing-on-shoulders-of-giants/practice-HJMQ2XNw.tres" : "standing-on-shoulders-of-giants/$ make-the-robot-upright" ,
69+ "lesson-3-standing-on-shoulders-of-giants/practice-QiGjB7tK.tres" : "standing-on-shoulders-of-giants/make-the-character-visible" ,
70+ "lesson-3-standing-on-shoulders-of-giants/practice-HJMQ2XNw.tres" : "standing-on-shoulders-of-giants/make-the-robot-upright" ,
7171
72- "lesson-4-drawing-a-rectangle/practice-Gx0c7DDi.tres" : "drawing-a-rectangle/$ drawing-a-corner" ,
73- "lesson-4-drawing-a-rectangle/practice-5AJTESv5.tres" : "drawing-a-rectangle/$ drawing-a-rectangle" ,
74- "lesson-4-drawing-a-rectangle/practice-kGx0c7DD.tres" : "drawing-a-rectangle/$ drawing-a-bigger-rectangle" ,
72+ "lesson-4-drawing-a-rectangle/practice-Gx0c7DDi.tres" : "drawing-a-rectangle/drawing-a-corner" ,
73+ "lesson-4-drawing-a-rectangle/practice-5AJTESv5.tres" : "drawing-a-rectangle/drawing-a-rectangle" ,
74+ "lesson-4-drawing-a-rectangle/practice-kGx0c7DD.tres" : "drawing-a-rectangle/drawing-a-bigger-rectangle" ,
7575
76- "lesson-5-your-first-function/practice-QiGjB7tK.tres" : "your-first-function/$ a-function-to-draw-squares" ,
77- "lesson-5-your-first-function/practice-kGx0c7DD.tres" : "your-first-function/$ drawing-multiple-squares" ,
76+ "lesson-5-your-first-function/practice-QiGjB7tK.tres" : "your-first-function/a-function-to-draw-squares" ,
77+ "lesson-5-your-first-function/practice-kGx0c7DD.tres" : "your-first-function/drawing-multiple-squares" ,
7878
79- "lesson-6-multiple-function-parameters/practice-qAYVjotx.tres" : "multiple-function-parameters/$ drawing-corners-of-different-sizes" ,
80- "lesson-6-multiple-function-parameters/practice-DwfyqdYO.tres" : "multiple-function-parameters/$ using-multiple-parameters" ,
81- "lesson-6-multiple-function-parameters/practice-v5tT6n1T.tres" : "multiple-function-parameters/$ drawing-squares-of-any-size" ,
82- "lesson-6-multiple-function-parameters/practice-lkGx0c7D.tres" : "multiple-function-parameters/$ drawing-rectangles-of-any-size" ,
79+ "lesson-6-multiple-function-parameters/practice-qAYVjotx.tres" : "multiple-function-parameters/drawing-corners-of-different-sizes" ,
80+ "lesson-6-multiple-function-parameters/practice-DwfyqdYO.tres" : "multiple-function-parameters/using-multiple-parameters" ,
81+ "lesson-6-multiple-function-parameters/practice-v5tT6n1T.tres" : "multiple-function-parameters/drawing-squares-of-any-size" ,
82+ "lesson-6-multiple-function-parameters/practice-lkGx0c7D.tres" : "multiple-function-parameters/drawing-rectangles-of-any-size" ,
8383
84- "lesson-7-member-variables/practice-Gx0c7DDi.tres" : "member-variables/$ draw-a-rectangle-at-a-precise-position" ,
85- "lesson-7-member-variables/practice-x0c7DDiz.tres" : "member-variables/$ draw-squares-at-different-positions" ,
84+ "lesson-7-member-variables/practice-Gx0c7DDi.tres" : "member-variables/draw-a-rectangle-at-a-precise-position" ,
85+ "lesson-7-member-variables/practice-x0c7DDiz.tres" : "member-variables/draw-squares-at-different-positions" ,
8686
87- "lesson-8-defining-variables/practice-lkGx0c7D.tres" : "defining-variables/$ define-a-health-variable" ,
87+ "lesson-8-defining-variables/practice-lkGx0c7D.tres" : "defining-variables/define-a-health-variable" ,
8888
89- "lesson-9-adding-and-subtracting/practice-nk1K416Q.tres" : "adding-and-subtracting/$ damaging-the-robot" ,
90- "lesson-9-adding-and-subtracting/practice-kGx0c7DD.tres" : "adding-and-subtracting/$ healing-the-robot" ,
89+ "lesson-9-adding-and-subtracting/practice-nk1K416Q.tres" : "adding-and-subtracting/damaging-the-robot" ,
90+ "lesson-9-adding-and-subtracting/practice-kGx0c7DD.tres" : "adding-and-subtracting/healing-the-robot" ,
9191
92- "lesson-10-the-game-loop/practice-tKRHJMQ2.tres" : "the-game-loop/$ rotating-a-character-continuously" ,
93- "lesson-10-the-game-loop/practice-QiGjB7tK.tres" : "the-game-loop/$ creating-circular-movement" ,
92+ "lesson-10-the-game-loop/practice-tKRHJMQ2.tres" : "the-game-loop/rotating-a-character-continuously" ,
93+ "lesson-10-the-game-loop/practice-QiGjB7tK.tres" : "the-game-loop/creating-circular-movement" ,
9494
95- "lesson-11-time-delta/practice-UdOCQiGj.tres" : "time-delta/$ rotating-using-delta" ,
96- "lesson-11-time-delta/practice-x0c7DDiz.tres" : "time-delta/$ moving-in-a-circle-using-delta" ,
95+ "lesson-11-time-delta/practice-UdOCQiGj.tres" : "time-delta/rotating-using-delta" ,
96+ "lesson-11-time-delta/practice-x0c7DDiz.tres" : "time-delta/moving-in-a-circle-using-delta" ,
9797
98- "lesson-12-using-variables/practice-lkGx0c7D.tres" : "using-variables/$ clarifying-code-using-variables" ,
99- "lesson-12-using-variables/practice-KUdOCQiG.tres" : "using-variables/$ fixing-an-out-of-scope-error" ,
98+ "lesson-12-using-variables/practice-lkGx0c7D.tres" : "using-variables/clarifying-code-using-variables" ,
99+ "lesson-12-using-variables/practice-KUdOCQiG.tres" : "using-variables/fixing-an-out-of-scope-error" ,
100100
101- "lesson-13-conditions/practice-KRHJMQ2X.tres" : "conditions/$ using-comparisons" ,
102- "lesson-13-conditions/practice-MqAYVjot.tres" : "conditions/$ limiting-healing" ,
103- "lesson-13-conditions/practice-xZPxY8VU.tres" : "conditions/$ preventing-health-from-going-below-zero" ,
101+ "lesson-13-conditions/practice-KRHJMQ2X.tres" : "conditions/using-comparisons" ,
102+ "lesson-13-conditions/practice-MqAYVjot.tres" : "conditions/limiting-healing" ,
103+ "lesson-13-conditions/practice-xZPxY8VU.tres" : "conditions/preventing-health-from-going-below-zero" ,
104104
105- "lesson-14-multiplying/practice-0c7DDizK.tres" : "multiplying/$ increasing-maximum-health-exponentially" ,
106- "lesson-14-multiplying/practice-CQiGjB7t.tres" : "multiplying/$ reducing-damage-at-higher-levels" ,
105+ "lesson-14-multiplying/practice-0c7DDizK.tres" : "multiplying/increasing-maximum-health-exponentially" ,
106+ "lesson-14-multiplying/practice-CQiGjB7t.tres" : "multiplying/reducing-damage-at-higher-levels" ,
107107
108- "lesson-16-2d-vectors/practice-RHJMQ2XN.tres" : "2d-vectors/$ increasing-scale-using-vectors" ,
109- "lesson-16-2d-vectors/practice-kGx0c7DD.tres" : "2d-vectors/$ resetting-size-and-position-using-vectors" ,
108+ "lesson-16-2d-vectors/practice-RHJMQ2XN.tres" : "2d-vectors/increasing-scale-using-vectors" ,
109+ "lesson-16-2d-vectors/practice-kGx0c7DD.tres" : "2d-vectors/resetting-size-and-position-using-vectors" ,
110110
111- "lesson-17-while-loops/practice-lkGx0c7D.tres" : "while-loops/$ moving-to-the-end-of-a-board" ,
111+ "lesson-17-while-loops/practice-lkGx0c7D.tres" : "while-loops/moving-to-the-end-of-a-board" ,
112112
113- "lesson-18-for-loops/practice-7tKRHJMQ.tres" : "for-loops/$ using-a-for-loop-to-move-to-the-end-of-the-board" ,
114- "lesson-18-for-loops/practice-UDpPwQDw.tres" : "for-loops/$ improving-code-with-a-for-loop" ,
113+ "lesson-18-for-loops/practice-7tKRHJMQ.tres" : "for-loops/using-a-for-loop-to-move-to-the-end-of-the-board" ,
114+ "lesson-18-for-loops/practice-UDpPwQDw.tres" : "for-loops/improving-code-with-a-for-loop" ,
115115
116- "lesson-19-creating-arrays/practice-otxF5HUx.tres" : "creating-arrays/$ walking-to-the-robot" ,
117- "lesson-19-creating-arrays/practice-PxY8VUDp.tres" : "creating-arrays/$ selecting-units" ,
116+ "lesson-19-creating-arrays/practice-otxF5HUx.tres" : "creating-arrays/walking-to-the-robot" ,
117+ "lesson-19-creating-arrays/practice-PxY8VUDp.tres" : "creating-arrays/selecting-units" ,
118118
119- "lesson-20-looping-over-arrays/practice-f8B67UJ8.tres" : "looping-over-arrays/$ move-the-robot-along-the-path" ,
120- "lesson-20-looping-over-arrays/practice-clsFcSrG.tres" : "looping-over-arrays/$ back-to-the-drawing-board" ,
119+ "lesson-20-looping-over-arrays/practice-f8B67UJ8.tres" : "looping-over-arrays/move-the-robot-along-the-path" ,
120+ "lesson-20-looping-over-arrays/practice-clsFcSrG.tres" : "looping-over-arrays/back-to-the-drawing-board" ,
121121
122- "lesson-21-strings/practice-iGjB7tKR.tres" : "strings/$ creating-string-variables" ,
123- "lesson-21-strings/practice-NwQMqAYV.tres" : "strings/$ using-an-array-of-strings-to-play-a-combo" ,
122+ "lesson-21-strings/practice-iGjB7tKR.tres" : "strings/creating-string-variables" ,
123+ "lesson-21-strings/practice-NwQMqAYV.tres" : "strings/using-an-array-of-strings-to-play-a-combo" ,
124124
125- "lesson-22-functions-return-values/practice-llf8B67U.tres" : "functions-return-values/$ converting-coordinates-from-the-grid-to-the-screen" ,
125+ "lesson-22-functions-return-values/practice-llf8B67U.tres" : "functions-return-values/converting-coordinates-from-the-grid-to-the-screen" ,
126126
127- "lesson-23-append-to-arrays/practice-KUdOCQiG.tres" : "append-to-arrays/$ completing-orders" ,
128- "lesson-23-append-to-arrays/practice-B7tKRHJM.tres" : "append-to-arrays/$ clearing-up-the-crates" ,
127+ "lesson-23-append-to-arrays/practice-KUdOCQiG.tres" : "append-to-arrays/completing-orders" ,
128+ "lesson-23-append-to-arrays/practice-B7tKRHJM.tres" : "append-to-arrays/clearing-up-the-crates" ,
129129
130- "lesson-24-access-array-indices/practice-ErO9L4MW.tres" : "access-array-indices/$ using-the-right-items" ,
131- "lesson-24-access-array-indices/practice-wfi7YGry.tres" : "access-array-indices/$ realigning-the-train-tracks" ,
130+ "lesson-24-access-array-indices/practice-ErO9L4MW.tres" : "access-array-indices/using-the-right-items" ,
131+ "lesson-24-access-array-indices/practice-wfi7YGry.tres" : "access-array-indices/realigning-the-train-tracks" ,
132132
133- "lesson-25-creating-dictionaries/practice-tZixQOPR.tres" : "creating-dictionaries/$ creating-an-inventory-using-a-dictionary" ,
134- "lesson-25-creating-dictionaries/practice-9clsFcSr.tres" : "creating-dictionaries/$ increasing-item-counts" ,
133+ "lesson-25-creating-dictionaries/practice-tZixQOPR.tres" : "creating-dictionaries/creating-an-inventory-using-a-dictionary" ,
134+ "lesson-25-creating-dictionaries/practice-9clsFcSr.tres" : "creating-dictionaries/increasing-item-counts" ,
135135
136- "lesson-26-looping-over-dictionaries/practice-nVHARbBW.tres" : "looping-over-dictionaries/$ displaying-the-inventory" ,
137- "lesson-26-looping-over-dictionaries/practice-bDGt6fUq.tres" : "looping-over-dictionaries/$ placing-units-on-the-board" ,
136+ "lesson-26-looping-over-dictionaries/practice-nVHARbBW.tres" : "looping-over-dictionaries/displaying-the-inventory" ,
137+ "lesson-26-looping-over-dictionaries/practice-bDGt6fUq.tres" : "looping-over-dictionaries/placing-units-on-the-board" ,
138138
139- "lesson-27-value-types/practice-lkGx0c7D.tres" : "value-types/$ displaying-the-player-health-and-energy" ,
140- "lesson-27-value-types/practice-izKUdOCQ.tres" : "value-types/$ letting-the-player-type-numbers" ,
139+ "lesson-27-value-types/practice-lkGx0c7D.tres" : "value-types/displaying-the-player-health-and-energy" ,
140+ "lesson-27-value-types/practice-izKUdOCQ.tres" : "value-types/letting-the-player-type-numbers" ,
141141
142- "lesson-28-specifying-types/practice-x0c7DDiz.tres" : "specifying-types/$ add-the-correct-type-hints-to-variables" ,
143- "lesson-28-specifying-types/practice-UdOCQiGj.tres" : "specifying-types/$ fix-the-values-to-match-the-type-hints" ,
142+ "lesson-28-specifying-types/practice-x0c7DDiz.tres" : "specifying-types/add-the-correct-type-hints-to-variables" ,
143+ "lesson-28-specifying-types/practice-UdOCQiGj.tres" : "specifying-types/fix-the-values-to-match-the-type-hints" ,
144144}
145145
146146var _inverted_lessons := {}
@@ -203,4 +203,4 @@ func get_practice_from_slug(slug: String) -> BBCodeParser.ParseNode:
203203
204204
205205func set_practice_slug (lesson_slug : String , practice_slug : String , practice : BBCodeParser .ParseNode ) -> void :
206- practice_slugs ["%s /$ %s " % [lesson_slug , practice_slug ]] = practice
206+ practice_slugs ["%s /%s " % [lesson_slug , practice_slug ]] = practice
0 commit comments