From 59cafa19e4c23de82c7baa54db115e9f1801a0be Mon Sep 17 00:00:00 2001 From: Continuous Integration Date: Fri, 10 Feb 2017 19:36:10 +0000 Subject: [PATCH] levelbuilder content changes (-Brad) --- dashboard/config/locales/dsls.en.yml | 11 ++ dashboard/config/locales/scripts.en.yml | 3 + dashboard/config/scripts/csd6-draft.script | 28 +-- .../scripts/csd_accessing_list_items.external | 13 +- ...csd_creating_variables_in_app_lab.external | 9 +- .../scripts/csd_getters_and_setters.external | 16 +- .../scripts/csd_gettext_vs_getnumber.external | 19 ++ dashboard/config/scripts/csd_lists.external | 11 +- .../config/scripts/csd_review_events.external | 2 +- .../config/scripts/csd_u3_game_intro.external | 2 +- .../scripts/csd_variables_matching.match | 59 +++++++ .../scripts/levels/4-5 Nested Loops 9.level | 166 +++++++++--------- .../CSD U3 - images - race images.level | 4 +- .../levels/CSD U3 Sprites Template race.level | 7 +- .../CSD U3 Sprites race create sprites.level | 4 +- .../levels/CSD U3 Sprites race finish.level | 4 +- .../levels/CSD U3 Sprites race movement.level | 4 +- .../levels/CSD U3 Sprites race random.level | 4 +- .../levels/CSD U3 game backgrounds.level | 4 +- .../levels/CSD U3 game display boards.level | 4 +- .../levels/CSD U3 game variables.level | 6 +- .../levels/CSD U3 platform items1.level | 8 +- .../levels/CSD U3 platform items2.level | 6 +- .../levels/CSD U3 platform items3.level | 6 +- .../levels/CSD U3 platform platform1.level | 4 +- .../levels/CSD U3 platform platform2.level | 6 +- .../levels/CSD U3 platform platform3.level | 6 +- .../levels/CSD U3 platform scoreboard.level | 4 +- .../CSDU2 - Nav add to Personal Site.level | 8 +- .../levels/CSDU6 - Arrays - length.level | 39 +++- .../CSDU6 - Arrays - lengthMinus1.level | 39 +++- ...CSDU6 - L06 - Light Display Template.level | 54 +++++- ...- UI and Inputs - event type testing.level | 5 +- ...and Inputs - get set with text input.level | 88 ++++++++++ ...- UI and Inputs - getNumber practice.level | 94 ++++++++++ .../CSDU6 - UI and Inputs - getNumber.level | 6 +- ... - UI and Inputs - setProperty Image.level | 91 ++++++++++ ...and Inputs - setProperty first level.level | 91 ++++++++++ .../CSDU6 - UI and Inputs - setProperty.level | 5 +- .../CSDU6 - UI and Inputs - setScreen.level | 85 +++++++++ .../levels/CSDU6 - lists - lists 1.level | 1 + .../levels/CSDU6 - lists - lists 5.level | 5 +- ...DU6L06 - lists and colorLeds - debug.level | 5 +- ...ts and colorLeds - light pattern off.level | 98 +++++++++++ ...06 - lists and colorLeds - set color.level | 7 +- ...06 - lists and colorLeds - song list.level | 5 +- ...U6L06 - lists and colorLeds - toggle.level | 7 +- ...ts and colorLeds -solo light pattern.level | 3 +- .../levels/Challenge: Input and UI.level | 3 +- .../levels/Challenge: Lights Picker.level | 3 +- .../levels/Challenge: List of Notes.level | 9 +- .../Challenge: Random Button Colors.level | 94 ++++++++++ .../scripts/levels/Course 4 SCF 1b.level | 4 +- .../NEW Course 4 Artist Functions 11.level | 52 +++--- .../NEW Course 4 Bee For Loops 10a.level | 4 +- .../levels/NEW Course 4 Bee For Loops 2.level | 19 +- .../levels/NEW Course 4 Bee For Loops 3.level | 27 ++- .../NEW Course 4 Bee For Loops 4 4.level | 15 +- .../levels/NEW Course 4 Bee For Loops 5.level | 10 +- .../levels/NEW Course 4 Bee For Loops 6.level | 7 +- .../levels/NEW Course 4 Bee For Loops 7.level | 8 +- .../levels/NEW Course 4 Bee For Loops 8.level | 11 +- .../Stop: Review Getters and Setters.level | 2 +- .../allthethings level dataTables.level | 7 +- .../scripts/levels/courseA_maze_seq13.level | 3 +- .../levels/courseB_partner_foos_link.level | 17 ++ .../levels/courseC_harvester_loops11.level | 4 +- .../scripts/responding_to_user_input.external | 2 +- 68 files changed, 1190 insertions(+), 267 deletions(-) create mode 100644 dashboard/config/scripts/csd_gettext_vs_getnumber.external create mode 100644 dashboard/config/scripts/csd_variables_matching.match create mode 100644 dashboard/config/scripts/levels/CSDU6 - UI and Inputs - get set with text input.level create mode 100644 dashboard/config/scripts/levels/CSDU6 - UI and Inputs - getNumber practice.level create mode 100644 dashboard/config/scripts/levels/CSDU6 - UI and Inputs - setProperty Image.level create mode 100644 dashboard/config/scripts/levels/CSDU6 - UI and Inputs - setProperty first level.level create mode 100644 dashboard/config/scripts/levels/CSDU6 - UI and Inputs - setScreen.level create mode 100644 dashboard/config/scripts/levels/CSDU6L06 - lists and colorLeds - light pattern off.level create mode 100644 dashboard/config/scripts/levels/Challenge: Random Button Colors.level create mode 100644 dashboard/config/scripts/levels/courseB_partner_foos_link.level diff --git a/dashboard/config/locales/dsls.en.yml b/dashboard/config/locales/dsls.en.yml index 5d34ed3f24334..b289fc509f60b 100644 --- a/dashboard/config/locales/dsls.en.yml +++ b/dashboard/config/locales/dsls.en.yml @@ -603,6 +603,7 @@ en: 'CSD: Lists': {} 'CSD: Review Events': {} 'CSD: colorLed list': {} + 'CSD: getText vs getNumber': {} 'CSD: setProperty': {} CSDU2 - Fundamentals Videos: {} CSDU2 - Pick Elements Styled: {} @@ -3354,6 +3355,16 @@ en: Shows the name of the page in a new tab: Shows the name of the page in a new tab Starts and ends the HTML document: Starts and ends the HTML document Tells the computer that this document is an HTML file: Tells the computer that this document is an HTML file + 'CSD: Variables Matching': + "![](https://images.code.org/7c46bbd6967456652171894454913042-image-1463067997744.gif)": "![](https://images.code.org/7c46bbd6967456652171894454913042-image-1463067997744.gif)" + "![](https://images.code.org/7c66a6cadb0d0a136492bbedac65ebb0-image-1463067992351.gif)": "![](https://images.code.org/7c66a6cadb0d0a136492bbedac65ebb0-image-1463067992351.gif)" + "![](https://images.code.org/c999112a199aa2c9cf304a728ea6fda3-image-1463067995185.gif)": "![](https://images.code.org/c999112a199aa2c9cf304a728ea6fda3-image-1463067995185.gif)" + "![](https://images.code.org/f53831a3dd4f122ba9a873640da67825-image-1463067988435.gif)": "![](https://images.code.org/f53831a3dd4f122ba9a873640da67825-image-1463067988435.gif)" + : + Program 1: Program 1 + Program 2: Program 2 + Program 3: Program 3 + Program 4: Program 4 CSDU2 Match RGB Colors: Question: Question 'red: 107, green: 142, blue: 35 - rgb(107,142,35)': 'red: 107, green: 142, blue: 35 - rgb(107,142,35)' diff --git a/dashboard/config/locales/scripts.en.yml b/dashboard/config/locales/scripts.en.yml index dac7455451e73..72d82e63efeff 100644 --- a/dashboard/config/locales/scripts.en.yml +++ b/dashboard/config/locales/scripts.en.yml @@ -2667,6 +2667,9 @@ en: Foo: Foo Lists: Lists Lights: Lights + Event Types: Event Types + Getters and Setters: Getters and Setters + Input Unplugged: Input Unplugged title: Draft Unit 6 description_audience: '' description_short: '' diff --git a/dashboard/config/scripts/csd6-draft.script b/dashboard/config/scripts/csd6-draft.script index cdcb91a1d8280..42c6b6fdeab86 100644 --- a/dashboard/config/scripts/csd6-draft.script +++ b/dashboard/config/scripts/csd6-draft.script @@ -1,29 +1,33 @@ stage 'Computing Innovations' level 'CSDU6 SFLP' -stage 'Input Uplugged' +stage 'Input Unplugged' level 'CSDU6 GameLab Input 1' level 'CSDU6 AppLab Input 1' -stage 'UI and Input' +stage 'Event Types' named_level 'CSD U6L03 Overview' named_level 'CSD Review: Design Mode, IDs, and Events' named_level 'CSD: Review Events' -level 'CSDU6 - UI and Inputs - Debug Screens and IDs' +named_level 'CSD: Creating Variables In App Lab' level 'CSDU6 - UI and Inputs - event type testing' + +stage 'Getters and Setters' named_level 'CSD - Getters and Setters' +level 'CSDU6 - UI and Inputs - setScreen' level 'CSDU6 - UI and Inputs - setText' level 'CSDU6 - UI and Inputs - hide show' -named_level 'CSD: Creating Variables In App Lab' level 'CSDU6 - UI and Inputs - getText' level 'CSDU6 - UI and Inputs - dropdown setText' -named_level 'Stop: Review Getters and Setters' -named_level 'CSD: Slider Example' -level 'CSDU6 - UI and Inputs - slider UI' -level 'CSDU6 - UI and Inputs - set slider range' +level 'CSDU6 - UI and Inputs - get set with text input' +level 'CSDU6 - UI and Inputs - getNumber practice' +named_level 'CSD: getText vs getNumber' level 'CSDU6 - UI and Inputs - getNumber' named_level 'CSD: setProperty' +level 'CSDU6 - UI and Inputs - setProperty first level' +level 'CSDU6 - UI and Inputs - setProperty Image' level 'CSDU6 - UI and Inputs - setProperty' +named_level 'Stop: Review Getters and Setters' named_level 'Challenge: Input and UI' stage 'The Circuit Playground' @@ -56,7 +60,7 @@ named_level 'CSD: List Length' level 'CSDU6 - Arrays - length' level 'CSDU6 - Arrays - lengthMinus1' level 'CSDU6 - lists - lists 5' -named_level 'Challenge: List of Notes' +named_level 'Challenge: Random Button Colors' stage 'Lights' named_level 'CSD: colorLed list' @@ -64,9 +68,7 @@ level 'CSDU6L06 - lists and colorLeds - song list' level 'CSDU6L06 - lists and colorLeds - set color' level 'CSDU6L06 - lists and colorLeds - debug' level 'CSDU6L06 - lists and colorLeds - toggle' -level 'CSDU6L06 - lists and colorLeds - blink' -level 'CSDU6L06 - lists and colorLeds - pulse' -level 'CSDU6L06 - lists and colorLeds -solo light pattern' named_level 'CSD - Functions Review' -named_level 'CSD: Dropdown & Conditionals' +level 'CSDU6L06 - lists and colorLeds -solo light pattern' +level 'CSDU6L06 - lists and colorLeds - light pattern off' named_level 'Challenge: Lights Picker' diff --git a/dashboard/config/scripts/csd_accessing_list_items.external b/dashboard/config/scripts/csd_accessing_list_items.external index 2f5b5241f4d45..81c0d50f14798 100644 --- a/dashboard/config/scripts/csd_accessing_list_items.external +++ b/dashboard/config/scripts/csd_accessing_list_items.external @@ -18,14 +18,11 @@ If you try to access an index that does not exist the program does not know what ` var myList = ["dog", "cat", "pig"] ` -If I tried to access an index less than zero or greater than 3 the program would evaluate that to be undefined since it has not been defined in my code. - -` -console.log(myList[-1]); -console.log(myList[3]); -console.log(myList[20]); -` -All of these would print 'undefined' in the console. +If I tried to access an index less than zero or greater than 3 the program would evaluate that to be undefined since it has not been defined in my code. All of these would print 'undefined' in the console. + +`console.log(myList[-1]);`
+`console.log(myList[3]);`
+`console.log(myList[20]);`
## Expressions as Indexes diff --git a/dashboard/config/scripts/csd_creating_variables_in_app_lab.external b/dashboard/config/scripts/csd_creating_variables_in_app_lab.external index 85db1b4993e59..b1a1db8204ffb 100644 --- a/dashboard/config/scripts/csd_creating_variables_in_app_lab.external +++ b/dashboard/config/scripts/csd_creating_variables_in_app_lab.external @@ -1,13 +1,14 @@ name 'CSD: Creating Variables In App Lab' href 'path/to/html/in/asset/folder' markdown < # Getters -setting different parts of a program is a common part of a program that is often called to a getter +Getters are commands which **get** or retrieve information. Getters often require at least one input: the place you want to retrieve information from. -example getText +`getText()` is a common getter you will use. It can be used to get the text from something like a text input. -important thing is getText takes one input - what the UI element you want to get the text of + -whenever you use a getter it is good practice to save it with a variable since you will probably want to use that information later. +Often when you use a getter it is a good idea to save the result in a variable so that you can use it throughout your program. MARKDOWN diff --git a/dashboard/config/scripts/csd_gettext_vs_getnumber.external b/dashboard/config/scripts/csd_gettext_vs_getnumber.external new file mode 100644 index 0000000000000..dc7a0415465ac --- /dev/null +++ b/dashboard/config/scripts/csd_gettext_vs_getnumber.external @@ -0,0 +1,19 @@ +name 'CSD: getText vs getNumber' +href 'path/to/html/in/asset/folder' +markdown < + +The list command looks this: + + + +## Example ![](https://images.code.org/0b7d201db2990f0189963bb6a565a057-image-1447097600773.33.08 PM.png) @@ -20,4 +28,5 @@ This list contains 3 values: 100, 250, 500. Notice that the values are separated ![](https://images.code.org/7d4be70330108e3e5d6325fa4e721ef4-image-1447097904253.38.18 PM.png) This will print out [100, 250, 500] in the console area. + MARKDOWN diff --git a/dashboard/config/scripts/csd_review_events.external b/dashboard/config/scripts/csd_review_events.external index cdd147cf85d7b..dbf4213879c49 100644 --- a/dashboard/config/scripts/csd_review_events.external +++ b/dashboard/config/scripts/csd_review_events.external @@ -40,7 +40,7 @@ It's important to understand in Event-Driven programming that: App Lab's `onEvent` block is a type of event-handling function called an **Event Listener**. It wraps all of the setup up you need to do event handling into one command that has several parts. Here is an example with everything labeled: - +
diff --git a/dashboard/config/scripts/csd_u3_game_intro.external b/dashboard/config/scripts/csd_u3_game_intro.external index b3d96d56f8434..2ba0a7937c5fc 100644 --- a/dashboard/config/scripts/csd_u3_game_intro.external +++ b/dashboard/config/scripts/csd_u3_game_intro.external @@ -9,7 +9,7 @@ Now that you have all the skills you need, it's time to make your own game! With a partner, brainstorm some different ideas for your game. You can think about the games you've already seen, or look at some more sample games to give you ideas. -* Side scroller +* Side Scroller * Platform Jumper * Air Hockey * Defender Game diff --git a/dashboard/config/scripts/csd_variables_matching.match b/dashboard/config/scripts/csd_variables_matching.match new file mode 100644 index 0000000000000..1997efd163773 --- /dev/null +++ b/dashboard/config/scripts/csd_variables_matching.match @@ -0,0 +1,59 @@ +name 'CSD: Variables Matching' +question 'Program 3' +answer '' +question 'Program 2' +answer '![](https://images.code.org/7c66a6cadb0d0a136492bbedac65ebb0-image-1463067992351.gif)' +question 'Program 4' +answer '![](https://images.code.org/7c46bbd6967456652171894454913042-image-1463067997744.gif)' +question 'Program 1' +answer '![](https://images.code.org/f53831a3dd4f122ba9a873640da67825-image-1463067988435.gif)' + +markdown < - - jumpBackward - - - 50 - - + - - turnLeft - 90 + + jumpBackward + + + 50 + + - - jumpForward - - - 60 - - + + turnLeft + 90 - - 360 - - - moveForward - - - 0.1 - - - - - turnRight - 1 - - + + jumpForward + + + 60 - + - - - - #228b22 - - - - - jumpBackward + + 360 + + + moveForward - 60 + 0.1 turnRight - 90 + 1 + + + + + + + + + #228b22 + + + + + jumpBackward + + + 60 + + - - jumpForward - - - 50 - - + + turnRight + 90 jumpForward - 120 + 50 - - 60 - - - moveForward - - - 0.25 - - - - - turnRight - 3 - - + + jumpForward + + + 120 - + - - moveForward - 250 + + 60 + + + moveForward + + + 0.25 + + + + + turnRight + 3 + + + + - - turnRight - 90 + + moveForward + 250 - - jumpForward - + + turnRight + 90 + + + jumpForward + 50 - - + + turnRight 90 @@ -389,6 +391,8 @@ + + diff --git a/dashboard/config/scripts/levels/CSD U3 - images - race images.level b/dashboard/config/scripts/levels/CSD U3 - images - race images.level index 9523873163a3d..593dac4ebbc0d 100644 --- a/dashboard/config/scripts/levels/CSD U3 - images - race images.level +++ b/dashboard/config/scripts/levels/CSD U3 - images - race images.level @@ -86,8 +86,8 @@ "all_animations_single_frame": "true", "pause_animations_by_default": "false", "encrypted_examples": "N0Un8GNoRjoi1Bf+thkj+Q9CLfOI4UaaT3vh/483Ri6jQa1wpy8BojoI3T6+\nZ6vM\n", - "contained_level_names": null, - "hide_share_and_remix": "false" + "hide_share_and_remix": "false", + "contained_level_names": null }, "published": true, "notes": "", diff --git a/dashboard/config/scripts/levels/CSD U3 Sprites Template race.level b/dashboard/config/scripts/levels/CSD U3 Sprites Template race.level index efb40ff11888a..53b4221d66850 100644 --- a/dashboard/config/scripts/levels/CSD U3 Sprites Template race.level +++ b/dashboard/config/scripts/levels/CSD U3 Sprites Template race.level @@ -39,12 +39,9 @@ "instructions_important": "false", "start_in_animation_tab": "false", "all_animations_single_frame": "false", - "contained_level_names": null, - "encrypted_examples": [ - - ], "hide_share_and_remix": "false", - "show_debug_watch": "false" + "show_debug_watch": "false", + "contained_level_names": null }, "published": true, "notes": "", diff --git a/dashboard/config/scripts/levels/CSD U3 Sprites race create sprites.level b/dashboard/config/scripts/levels/CSD U3 Sprites race create sprites.level index bc4117504d54e..767b496fac610 100644 --- a/dashboard/config/scripts/levels/CSD U3 Sprites race create sprites.level +++ b/dashboard/config/scripts/levels/CSD U3 Sprites race create sprites.level @@ -67,8 +67,8 @@ "start_in_animation_tab": "false", "all_animations_single_frame": "false", "encrypted_examples": "NZVSO1rMuSB05OU+4HfKwXlyrCAPWgDFf3+vfFyYdt3AO9fGKBWhpiOCcNLO\nbChR\n", - "contained_level_names": null, - "hide_share_and_remix": "false" + "hide_share_and_remix": "false", + "contained_level_names": null }, "published": true, "notes": "", diff --git a/dashboard/config/scripts/levels/CSD U3 Sprites race finish.level b/dashboard/config/scripts/levels/CSD U3 Sprites race finish.level index aa30feefec23a..0fd4919ccfa1b 100644 --- a/dashboard/config/scripts/levels/CSD U3 Sprites race finish.level +++ b/dashboard/config/scripts/levels/CSD U3 Sprites race finish.level @@ -67,8 +67,8 @@ "all_animations_single_frame": "false", "pause_animations_by_default": "false", "encrypted_examples": "R6cwAONPU515louS01aC/qDRkUYEeu70sjZ/FlVYE4YWOfNZvvf1RbGEIq4P\nedFi\n", - "contained_level_names": null, - "hide_share_and_remix": "false" + "hide_share_and_remix": "false", + "contained_level_names": null }, "published": true, "notes": "", diff --git a/dashboard/config/scripts/levels/CSD U3 Sprites race movement.level b/dashboard/config/scripts/levels/CSD U3 Sprites race movement.level index dd7e53ea7fa9e..dd3ef001cc9c8 100644 --- a/dashboard/config/scripts/levels/CSD U3 Sprites race movement.level +++ b/dashboard/config/scripts/levels/CSD U3 Sprites race movement.level @@ -67,8 +67,8 @@ "all_animations_single_frame": "false", "pause_animations_by_default": "false", "encrypted_examples": "i5MkoPmo8J9LuYJO6lleFuoQ98WdAgccA0K3WAitD9neildzQZIL10oroJBl\nkqXW\n", - "contained_level_names": null, - "hide_share_and_remix": "false" + "hide_share_and_remix": "false", + "contained_level_names": null }, "published": true, "notes": "", diff --git a/dashboard/config/scripts/levels/CSD U3 Sprites race random.level b/dashboard/config/scripts/levels/CSD U3 Sprites race random.level index f2b2cc83d1aeb..478b189a13dc1 100644 --- a/dashboard/config/scripts/levels/CSD U3 Sprites race random.level +++ b/dashboard/config/scripts/levels/CSD U3 Sprites race random.level @@ -67,8 +67,8 @@ "all_animations_single_frame": "false", "pause_animations_by_default": "false", "encrypted_examples": "8nGOgACRNM//altl+p3SHOw2hrAXTHFf8U1Mdgah0Mz9j4r9TSPeTktkhN/n\nJ4UY\n", - "contained_level_names": null, - "hide_share_and_remix": "false" + "hide_share_and_remix": "false", + "contained_level_names": null }, "published": true, "notes": "", diff --git a/dashboard/config/scripts/levels/CSD U3 game backgrounds.level b/dashboard/config/scripts/levels/CSD U3 game backgrounds.level index cb0439b29d1c3..5653b175ba8b9 100644 --- a/dashboard/config/scripts/levels/CSD U3 game backgrounds.level +++ b/dashboard/config/scripts/levels/CSD U3 game backgrounds.level @@ -39,7 +39,9 @@ "instructions_important": "false", "show_debug_watch": "true", "callout_json": "[\r\n {\r\n \"localization_key\": \"CSD_U3_S18_L4_C1\",\r\n \"callout_text\": \"This block creates a new function.\",\r\n \"element_id\": \".droplet-hover-div[data-block=\\\"functionParams_none\\\"]\",\r\n \"on\": \"callout1\",\r\n \"qtip_config\": {\r\n \"codeStudio\": {\r\n \"canReappear\": true,\r\n \"dropletPaletteCategory\": \"functions\"\r\n },\r\n \"style\": {\r\n \"classes\": \"\"\r\n },\r\n \"position\": {\r\n \"my\": \"left center\",\r\n \"at\": \"right center\",\r\n \"adjust\": {\r\n \"x\": 0,\r\n \"y\": 0\r\n }\r\n }\r\n }\r\n }, \r\n {\r\n \"localization_key\": \"CSD_U3_L18_S4_C2\",\r\n \"callout_text\": \"Functions area\",\r\n \"element_id\": \"\",\r\n \"on\": \"callout2\",\r\n \"qtip_config\": {\r\n \"codeStudio\": {\r\n \"canReappear\": true,\r\n \"dropletPaletteCategory\": \"\",\r\n \"codeString\": \"// Create your functions here\"\r\n },\r\n \"style\": {\r\n \"classes\": \"\"\r\n },\r\n \"position\": {\r\n \"my\": \"top left\",\r\n \"at\": \"bottom left\",\r\n \"adjust\": {\r\n \"x\": 160,\r\n \"y\": 10\r\n }\r\n }\r\n }\r\n },\r\n {\r\n \"localization_key\": \"CSD_U3_S18_L4_C1\",\r\n \"callout_text\": \"This block calls your function.\",\r\n \"element_id\": \".droplet-hover-div[data-block=\\\"callMyFunction\\\"]\",\r\n \"on\": \"callout3\",\r\n \"qtip_config\": {\r\n \"codeStudio\": {\r\n \"canReappear\": true,\r\n \"dropletPaletteCategory\": \"functions\"\r\n },\r\n \"style\": {\r\n \"classes\": \"\"\r\n },\r\n \"position\": {\r\n \"my\": \"left center\",\r\n \"at\": \"right center\",\r\n \"adjust\": {\r\n \"x\": 0,\r\n \"y\": 0\r\n }\r\n }\r\n }\r\n }\r\n]", - "contained_level_names": null + "contained_level_names": null, + "encrypted_examples": "1Dik0MYWFq9QPbRk8UDjXQ1EyAcjF7tZC0ggSPpcWTH3ugg80JUBWDqee8wb\nlJFv\n", + "hide_share_and_remix": "false" }, "published": true, "notes": "", diff --git a/dashboard/config/scripts/levels/CSD U3 game display boards.level b/dashboard/config/scripts/levels/CSD U3 game display boards.level index d90d7302069f8..4aee4873280a7 100644 --- a/dashboard/config/scripts/levels/CSD U3 game display boards.level +++ b/dashboard/config/scripts/levels/CSD U3 game display boards.level @@ -38,7 +38,9 @@ "pause_animations_by_default": "false", "instructions_important": "false", "show_debug_watch": "true", - "contained_level_names": null + "contained_level_names": null, + "encrypted_examples": "CV2aO2JS1CspjqVFoiNMd0Wfve53XmWY/NW86lSHClltwd+d6F+6/vFsdIWm\nQjxr\n", + "hide_share_and_remix": "false" }, "published": true, "notes": "", diff --git a/dashboard/config/scripts/levels/CSD U3 game variables.level b/dashboard/config/scripts/levels/CSD U3 game variables.level index 494b560d1970d..e895bf722229e 100644 --- a/dashboard/config/scripts/levels/CSD U3 game variables.level +++ b/dashboard/config/scripts/levels/CSD U3 game variables.level @@ -39,11 +39,9 @@ "instructions_important": "false", "show_debug_watch": "true", "callout_json": "[\r\n {\r\n \"localization_key\": \"CSD_U3_S18_L3_C1\",\r\n \"callout_text\": \"This block creates a new variable.\",\r\n \"element_id\": \".droplet-hover-div[data-block=\\\"declareAssign_x\\\"]\",\r\n \"on\": \"callout1\",\r\n \"qtip_config\": {\r\n \"codeStudio\": {\r\n \"canReappear\": true,\r\n \"dropletPaletteCategory\": \"variables\"\r\n },\r\n \"style\": {\r\n \"classes\": \"\"\r\n },\r\n \"position\": {\r\n \"my\": \"left center\",\r\n \"at\": \"right center\",\r\n \"adjust\": {\r\n \"x\": 0,\r\n \"y\": 0\r\n }\r\n }\r\n }\r\n }, \r\n {\r\n \"localization_key\": \"CSD_U3_L18_S3_C2\",\r\n \"callout_text\": \"Variables area\",\r\n \"element_id\": \"\",\r\n \"on\": \"callout2\",\r\n \"qtip_config\": {\r\n \"codeStudio\": {\r\n \"canReappear\": true,\r\n \"dropletPaletteCategory\": \"\",\r\n \"codeString\": \"// Create your variables here\"\r\n },\r\n \"style\": {\r\n \"classes\": \"\"\r\n },\r\n \"position\": {\r\n \"my\": \"top left\",\r\n \"at\": \"bottom left\",\r\n \"adjust\": {\r\n \"x\": 160,\r\n \"y\": 10\r\n }\r\n }\r\n }\r\n }\r\n]", + "hide_share_and_remix": "false", "contained_level_names": null, - "encrypted_examples": [ - - ], - "hide_share_and_remix": "false" + "encrypted_examples": "H2lusHrL41776DsFLCKfqQndWp5Yjv/EK0XVlgXciJYfwcpHIcoCQf0SKfKi\n8iua\n" }, "published": true, "notes": "", diff --git a/dashboard/config/scripts/levels/CSD U3 platform items1.level b/dashboard/config/scripts/levels/CSD U3 platform items1.level index ac96d0849f901..5df02faf1d827 100644 --- a/dashboard/config/scripts/levels/CSD U3 platform items1.level +++ b/dashboard/config/scripts/levels/CSD U3 platform items1.level @@ -7,7 +7,7 @@ "properties": { "skin": "gamelab", "embed": "false", - "markdown_instructions": "# Create an Item\r\n\r\n\r\n\r\nNext, you need to add in the items that fall from the top of the screen. These move just like the platforms, but faster. In order to make the game more interesting, the items start at a random location above the screen. For the sample game, the item's x position is a random number between 50 and 350, and the y position is a random number between -30 and -60.\r\n\r\n# Do This\r\n\r\n* Use the `createSprite` block to make an item sprite in the \"create sprites\" section of your code.\r\n* Use the `randomNumber` block inside your `createSprite` block to start the item at a random x and y position.\r\n* Use `setAnimation` and `velocityY` to give your sprite the correct image and make it fall from the top of the screen.\r\n* Run the code to test your sprite.", + "markdown_instructions": "# Create an Item\r\n\r\n\r\n\r\nNext, you need to add the items that fall from the top of the screen. These move just like the platforms, but faster. In order to make the game more interesting, the items start at a random location above the screen. For the sample game, the item's x position is a random number between 50 and 350, and the y position is a random number between -30 and -60.\r\n\r\n# Do This\r\n\r\n* Use the `createSprite` block to make an item sprite in the \"create sprites\" section of your code.\r\n* Use the `randomNumber` block inside your `createSprite` block to start the item at a random x and y position.\r\n* Use `setAnimation` and `velocityY` to give your sprite the correct image and make it fall from the top of the screen.\r\n* Run the code to test your sprite.", "is_k1": "false", "skip_instructions_popup": "false", "never_autoplay_video": "false", @@ -37,7 +37,11 @@ "palette_category_at_start": "sprites", "start_in_animation_tab": "false", "all_animations_single_frame": "false", - "contained_level_names": null + "contained_level_names": null, + "encrypted_examples": "AOVNFTul+r7CQPHlGgV9Z9StIqD9mCHJfz9xpSiGIupn64m6uo5Iy2I5s9eo\npjGJ\n", + "instructions_important": "false", + "hide_share_and_remix": "false", + "show_debug_watch": "false" }, "published": true, "notes": "", diff --git a/dashboard/config/scripts/levels/CSD U3 platform items2.level b/dashboard/config/scripts/levels/CSD U3 platform items2.level index 768ce89a14f8a..924de5ae229e7 100644 --- a/dashboard/config/scripts/levels/CSD U3 platform items2.level +++ b/dashboard/config/scripts/levels/CSD U3 platform items2.level @@ -37,7 +37,11 @@ "palette_category_at_start": "functions", "start_in_animation_tab": "false", "all_animations_single_frame": "false", - "contained_level_names": null + "contained_level_names": null, + "encrypted_examples": "pysinFMmkeIf2WB+RTLy2Y8X7PTX/I3OTtdk5WasH82mXcNKQaKcdtizx49m\nqBR8\n", + "instructions_important": "false", + "hide_share_and_remix": "false", + "show_debug_watch": "false" }, "published": true, "notes": "", diff --git a/dashboard/config/scripts/levels/CSD U3 platform items3.level b/dashboard/config/scripts/levels/CSD U3 platform items3.level index 1f1a41f6955f9..621ef68d46531 100644 --- a/dashboard/config/scripts/levels/CSD U3 platform items3.level +++ b/dashboard/config/scripts/levels/CSD U3 platform items3.level @@ -36,7 +36,11 @@ "project_template_level_name": "CSD U3 platform template", "start_in_animation_tab": "false", "all_animations_single_frame": "false", - "contained_level_names": null + "contained_level_names": null, + "encrypted_examples": "oWrJ65sfN2v8hHbGp+Ut0Twf5445KHL7mzFWOZKowgOll6VJjpA3JnCvNkiC\nz4ye\n", + "instructions_important": "false", + "hide_share_and_remix": "false", + "show_debug_watch": "false" }, "published": true, "notes": "", diff --git a/dashboard/config/scripts/levels/CSD U3 platform platform1.level b/dashboard/config/scripts/levels/CSD U3 platform platform1.level index 5bc65e4460869..87bc4ac4d4c7f 100644 --- a/dashboard/config/scripts/levels/CSD U3 platform platform1.level +++ b/dashboard/config/scripts/levels/CSD U3 platform platform1.level @@ -40,7 +40,9 @@ "callout_json": "[\r\n {\r\n \"localization_key\": \"CSD_U3_S17_L8_C1\",\r\n \"callout_text\": \"This block creates a new sprite.\",\r\n \"element_id\": \".droplet-hover-div[data-block=\\\"var sprite = createSprite\\\"]\",\r\n \"on\": \"callout\",\r\n \"qtip_config\": {\r\n \"codeStudio\": {\r\n \"canReappear\": true,\r\n \"dropletPaletteCategory\": \"sprites\"\r\n },\r\n \"style\": {\r\n \"classes\": \"\"\r\n },\r\n \"position\": {\r\n \"my\": \"left center\",\r\n \"at\": \"right center\",\r\n \"adjust\": {\r\n \"x\": 0,\r\n \"y\": 0\r\n }\r\n }\r\n }\r\n }\r\n]", "instructions_important": "false", "show_debug_watch": "false", - "contained_level_names": null + "contained_level_names": null, + "encrypted_examples": "siYPsk9nSmo28RSzbB/YObM6FFVVF0ydjO/clLkB+KRYASluBa3pFUjMt05g\n+0FU\n", + "hide_share_and_remix": "false" }, "published": true, "notes": "", diff --git a/dashboard/config/scripts/levels/CSD U3 platform platform2.level b/dashboard/config/scripts/levels/CSD U3 platform platform2.level index 12b25a5893a48..ec7fc9e5c191b 100644 --- a/dashboard/config/scripts/levels/CSD U3 platform platform2.level +++ b/dashboard/config/scripts/levels/CSD U3 platform platform2.level @@ -37,7 +37,11 @@ "palette_category_at_start": "functions", "start_in_animation_tab": "false", "all_animations_single_frame": "false", - "contained_level_names": null + "contained_level_names": null, + "encrypted_examples": "LWhXnnivVU3z5YDOHeEe03jKiQTfkO/6G6t9ANvrGEO7A1m0nQdCfRy5z/+D\nHeUr\n", + "instructions_important": "false", + "hide_share_and_remix": "false", + "show_debug_watch": "false" }, "published": true, "notes": "", diff --git a/dashboard/config/scripts/levels/CSD U3 platform platform3.level b/dashboard/config/scripts/levels/CSD U3 platform platform3.level index d015d3307e679..22cc8ac83e485 100644 --- a/dashboard/config/scripts/levels/CSD U3 platform platform3.level +++ b/dashboard/config/scripts/levels/CSD U3 platform platform3.level @@ -36,7 +36,11 @@ "project_template_level_name": "CSD U3 platform template", "start_in_animation_tab": "false", "all_animations_single_frame": "false", - "contained_level_names": null + "contained_level_names": null, + "encrypted_examples": "pI9jer9JytU8bsFZouCrORO0Kdi2MsZjTpE0Wb0HcbWbYQr/GLmtQSrtARMt\nfg5+\n", + "instructions_important": "false", + "hide_share_and_remix": "false", + "show_debug_watch": "false" }, "published": true, "notes": "", diff --git a/dashboard/config/scripts/levels/CSD U3 platform scoreboard.level b/dashboard/config/scripts/levels/CSD U3 platform scoreboard.level index 2aabc6165968e..e4ace0374959e 100644 --- a/dashboard/config/scripts/levels/CSD U3 platform scoreboard.level +++ b/dashboard/config/scripts/levels/CSD U3 platform scoreboard.level @@ -39,7 +39,9 @@ "callout_json": "[ \r\n {\r\n \"localization_key\": \"CSD_U3_L17_S7_C1\",\r\n \"callout_text\": \"Score is printed here.\",\r\n \"element_id\": \"\",\r\n \"on\": \"code_triggered\",\r\n \"qtip_config\": {\r\n \"codeStudio\": {\r\n \"canReappear\": true,\r\n \"dropletPaletteCategory\": \"\",\r\n \"codeString\": \"text(\\\"Score: \\\",10, 10, 80, 20);\"\r\n },\r\n \"style\": {\r\n \"classes\": \"\"\r\n },\r\n \"position\": {\r\n \"my\": \"top left\",\r\n \"at\": \"bottom left\",\r\n \"adjust\": {\r\n \"x\": 160,\r\n \"y\": 10\r\n }\r\n }\r\n }\r\n }\r\n]", "instructions_important": "false", "show_debug_watch": "false", - "contained_level_names": null + "contained_level_names": null, + "encrypted_examples": "bGqivtttuskk8yVmknI6JMfFQVpgUozzAxLvUen7Ob53bIfAE225C9oL7mmX\nqwHv\n", + "hide_share_and_remix": "false" }, "published": true, "notes": "", diff --git a/dashboard/config/scripts/levels/CSDU2 - Nav add to Personal Site.level b/dashboard/config/scripts/levels/CSDU2 - Nav add to Personal Site.level index 177e6ecfa85bd..d62640bcff254 100644 --- a/dashboard/config/scripts/levels/CSDU2 - Nav add to Personal Site.level +++ b/dashboard/config/scripts/levels/CSDU2 - Nav add to Personal Site.level @@ -5,9 +5,13 @@ "level_num": "custom", "user_id": 155, "properties": { - "markdown_instructions": "# Navigation on Personal Website\r\n\r\nNow that you have all the files for your website, connect them together!\r\n\r\n# Do This\r\n\r\n* Add hyperlinks at the top of your index.html file for every page on your site (including the index.html page).\r\n* In your style sheet, create a rule-set for the `a` tag that gives it the style that you want.\r\n* Copy the hyperlinks and put them in every page.\r\n\r\n\r\n* Add the `a` rule-set to every style sheet, or combine your style sheets to make your entire page have the same look and feel!\r\n\r\nOnce your website is set up and connected, feel free to make improvements to any pages on your website.\r\n\r\nBefore leaving this level:\r\n* Take a screenshot of your home page and save it somewhere on your computer so you can find it later (*Need help with how to screenshot? Check out this website .*)\r\n\r\n## Check List\r\n\r\n* All of your web pages are individual HTML files in this Portfolio Project\r\n* Created a div with title of website and links to all of your web pages in your website\r\n* Div is added at the top of each page of the website", + "markdown_instructions": "# Navigation on Personal Website\r\n\r\nNow that you have all the files for your website, connect them together!\r\n\r\n# Do This\r\n\r\n* Add hyperlinks at the top of your index.html file for every page on your site (including the index.html page).\r\n* In your style sheet, create a rule-set for the `a` tag that gives it the style that you want.\r\n* Copy the hyperlinks and put them in every page.\r\n\r\n\r\n* Add the `a` rule-set to every style sheet, or combine your style sheets to make your entire page have the same look and feel!\r\n\r\nOnce your website is set up and connected, feel free to make improvements to any pages on your website.\r\n\r\nBefore leaving this level:\r\n* Take a screenshot of your home page and save it somewhere on your computer so you can find it later (*Need help with how to screenshot? Check out this website .*)\r\n\r\n## Check List\r\n\r\n* All of your web pages are individual HTML files in this Portfolio Project", "project_template_level_name": "CSDU2 Portfolio Template", - "instructions_important": "false" + "instructions_important": "false", + "encrypted_examples": [ + + ], + "hide_share_and_remix": "false" }, "published": true, "notes": "", diff --git a/dashboard/config/scripts/levels/CSDU6 - Arrays - length.level b/dashboard/config/scripts/levels/CSDU6 - Arrays - length.level index b596d5e5ef51a..f58db09204522 100644 --- a/dashboard/config/scripts/levels/CSDU6 - Arrays - length.level +++ b/dashboard/config/scripts/levels/CSDU6 - Arrays - length.level @@ -7,18 +7,43 @@ "properties": { "skin": "applab", "code_functions": { + "onEvent": null, + "getText": null, + "setText": null, + "getNumber": null, + "setNumber": null, + "showElement": null, + "hideElement": null, + "setProperty": null, + "getProperty": null, + "setScreen": null, + "ifBlock": null, + "ifElseBlock": null, "addOperator": null, + "subtractOperator": null, + "multiplyOperator": null, + "divideOperator": null, + "equalityOperator": null, + "inequalityOperator": null, + "greaterThanOperator": null, + "greaterThanOrEqualOperator": null, + "lessThanOperator": null, + "lessThanOrEqualOperator": null, + "andOperator": null, + "orOperator": null, + "notOperator": null, + "randomNumber_min_max": null, "declareAssign_x": null, "declareNoAssign_x": null, "assign_x": null, "console.log": null, - "listLength": null, - "insertItem": null, - "appendItem": null, - "removeItem": null, - "declareAssign_x_array_1_4": { - "block": "var list = [];" - } + "functionParams_none": null, + "callMyFunction": null, + "comment": null, + "led.on": null, + "led.off": null, + "buzzer.note": null, + "declareAssign_list_abd": null }, "edit_code": true, "embed": "false", diff --git a/dashboard/config/scripts/levels/CSDU6 - Arrays - lengthMinus1.level b/dashboard/config/scripts/levels/CSDU6 - Arrays - lengthMinus1.level index ea23bdb079d48..65b53bba58c08 100644 --- a/dashboard/config/scripts/levels/CSDU6 - Arrays - lengthMinus1.level +++ b/dashboard/config/scripts/levels/CSDU6 - Arrays - lengthMinus1.level @@ -7,20 +7,43 @@ "properties": { "skin": "applab", "code_functions": { - "insertItem": null, - "appendItem": null, - "removeItem": null, - "listLength": null, + "onEvent": null, + "getText": null, + "setText": null, + "getNumber": null, + "setNumber": null, + "showElement": null, + "hideElement": null, + "setProperty": null, + "getProperty": null, + "setScreen": null, + "ifBlock": null, + "ifElseBlock": null, "addOperator": null, "subtractOperator": null, - "randomNumber": null, + "multiplyOperator": null, + "divideOperator": null, + "equalityOperator": null, + "inequalityOperator": null, + "greaterThanOperator": null, + "greaterThanOrEqualOperator": null, + "lessThanOperator": null, + "lessThanOrEqualOperator": null, + "andOperator": null, + "orOperator": null, + "notOperator": null, + "randomNumber_min_max": null, "declareAssign_x": null, "declareNoAssign_x": null, "assign_x": null, "console.log": null, - "declareAssign_x_array_1_4": { - "block": "var list = [];" - } + "functionParams_none": null, + "callMyFunction": null, + "comment": null, + "led.on": null, + "led.off": null, + "buzzer.note": null, + "declareAssign_list_abd": null }, "edit_code": true, "embed": "false", diff --git a/dashboard/config/scripts/levels/CSDU6 - L06 - Light Display Template.level b/dashboard/config/scripts/levels/CSDU6 - L06 - Light Display Template.level index 440a3ebc8fdef..4cf02faed2fd3 100644 --- a/dashboard/config/scripts/levels/CSDU6 - L06 - Light Display Template.level +++ b/dashboard/config/scripts/levels/CSDU6 - L06 - Light Display Template.level @@ -35,12 +35,60 @@ "hide_design_mode": "false", "beginner_mode": "false", "submittable": "false", - "hide_view_data_button": "false", + "hide_view_data_button": "true", "show_debug_watch": "false", "fail_on_lint_errors": "false", "debugger_disabled": "false", - "makerlab_enabled": "false", - "markdown_instructions": "# Blink\r\n\r\nMake lights blink \r\n\r\n", + "makerlab_enabled": "true", + "start_blocks": "// When \"rgb_button\" is clicked\r\n// turn on the redGreenBlue pattern\r\nonEvent(\"rgb_button\", \"click\", function(event) {\r\n redGreenBlue();\r\n});\r\n\r\nfunction redGreenBlue() {\r\n colorLeds[0].color(\"red\");\r\n colorLeds[1].color(\"green\");\r\n colorLeds[2].color(\"blue\");\r\n colorLeds[3].color(\"red\");\r\n colorLeds[4].color(\"green\");\r\n colorLeds[5].color(\"blue\");\r\n colorLeds[6].color(\"red\");\r\n colorLeds[7].color(\"green\");\r\n colorLeds[8].color(\"blue\");\r\n colorLeds[9].color(\"red\");\r\n}", + "hide_share_and_remix": "false", + "code_functions": { + "onEvent": null, + "getText": null, + "setText": null, + "getNumber": null, + "setNumber": null, + "showElement": null, + "hideElement": null, + "setProperty": null, + "getProperty": null, + "setScreen": null, + "ifBlock": null, + "ifElseBlock": null, + "addOperator": null, + "subtractOperator": null, + "multiplyOperator": null, + "divideOperator": null, + "equalityOperator": null, + "inequalityOperator": null, + "greaterThanOperator": null, + "greaterThanOrEqualOperator": null, + "lessThanOperator": null, + "lessThanOrEqualOperator": null, + "andOperator": null, + "orOperator": null, + "notOperator": null, + "randomNumber_min_max": null, + "declareAssign_x": null, + "declareNoAssign_x": null, + "assign_x": null, + "console.log": null, + "declareAssign_list_abd": null, + "listLength": null, + "functionParams_none": null, + "callMyFunction": null, + "comment": null, + "on": null, + "off": null, + "toggle": null, + "led.on": null, + "led.off": null, + "led.toggle": null, + "buzzer.off": null, + "color": null, + "buzzer.frequency": null + }, + "start_html": "
", "contained_level_names": null }, "published": true, diff --git a/dashboard/config/scripts/levels/CSDU6 - UI and Inputs - event type testing.level b/dashboard/config/scripts/levels/CSDU6 - UI and Inputs - event type testing.level index 1a44a3e5f9dd9..88a10a9563ed7 100644 --- a/dashboard/config/scripts/levels/CSDU6 - UI and Inputs - event type testing.level +++ b/dashboard/config/scripts/levels/CSDU6 - UI and Inputs - event type testing.level @@ -73,9 +73,10 @@ "fail_on_lint_errors": "false", "debugger_disabled": "false", "makerlab_enabled": "false", - "start_html": "\"
", - "markdown_instructions": "# Event Testing: \r\nThere is one event handler provided for you in the code section. One at a time:\r\n\r\n* Pick one of the UI elements on the screen (Button, Dropdown, Text Input, Slider)\r\n* Pick one event type from the 3 on your sheet (Click, Change, Input)\r\n* Interact this that UI element and try to come up with a clear understanding of when that event fires for that UI element.\r\n* Write down your thoughts in the table on your worksheet.\r\n", + "start_html": "
", + "markdown_instructions": "# Event Testing: \r\n\r\nSo far you have only used the 'click' event type. However there are lots of other event types. You are going to test out a couple different event types for 4 different UI elements (Button, Dropdown, Slider, Text Input).\r\n\r\n**Starter Code:** The starting code is set up to react to the *click* event for the *button*. When that event fires a message will be logged to the console.\r\n\r\nOne at a time, **change either the ID or event type**. Run the program and write down you observations of when this event fires. Keep going until you have tried all the combinations of events in the table.", "start_blocks": "onEvent(\"button\", \"click\", function(event) {\r\n console.log(\"The event fired!\");\r\n});", + "hide_share_and_remix": "false", "contained_level_names": null }, "published": true, diff --git a/dashboard/config/scripts/levels/CSDU6 - UI and Inputs - get set with text input.level b/dashboard/config/scripts/levels/CSDU6 - UI and Inputs - get set with text input.level new file mode 100644 index 0000000000000..3422262bd66a8 --- /dev/null +++ b/dashboard/config/scripts/levels/CSDU6 - UI and Inputs - get set with text input.level @@ -0,0 +1,88 @@ + +
", + "contained_level_names": null + }, + "published": true, + "notes": "", + "level_concept_difficulty": { + } +}]]> + + \ No newline at end of file diff --git a/dashboard/config/scripts/levels/CSDU6 - UI and Inputs - getNumber practice.level b/dashboard/config/scripts/levels/CSDU6 - UI and Inputs - getNumber practice.level new file mode 100644 index 0000000000000..d1bcd46cd9d4f --- /dev/null +++ b/dashboard/config/scripts/levels/CSDU6 - UI and Inputs - getNumber practice.level @@ -0,0 +1,94 @@ + +
", + "start_blocks": "onEvent(\"valueSlider\", \"change\", function(event) {\r\n setText(\"valueDisplay\", 10);\r\n});\r\n" + }, + "published": true, + "notes": "", + "level_concept_difficulty": { + } +}]]>
+ +
\ No newline at end of file diff --git a/dashboard/config/scripts/levels/CSDU6 - UI and Inputs - getNumber.level b/dashboard/config/scripts/levels/CSDU6 - UI and Inputs - getNumber.level index b008b152a5db6..9b0d84e33bc0f 100644 --- a/dashboard/config/scripts/levels/CSDU6 - UI and Inputs - getNumber.level +++ b/dashboard/config/scripts/levels/CSDU6 - UI and Inputs - getNumber.level @@ -76,8 +76,10 @@ "fail_on_lint_errors": "false", "debugger_disabled": "false", "makerlab_enabled": "false", - "project_template_level_name": "CSDU6 color slider template", - "markdown_instructions": "# getNumber\r\n\r\nAlright now that the sliders represent the right range of values. Let's get the value of each slider when they are updated. \r\n\r\n* Using the event handlers can you figure out how to get the number value of each slider? Since you are going to be getting a number and not text you will need to use a new block `getNumber()`. \r\n* Make sure to save each number with a clearly named variable. ", + "markdown_instructions": "# getNumber\r\n\r\n**Starter Code:** This program creates a simple calculator but **there is something wrong with it. Try putting in 2 + 2.**\r\n\r\nWe can fix this by using `getNumber()` instead of `getText()`. Can you fix the program by changing `getText()` to `getNumber()`?", + "hide_share_and_remix": "false", + "start_html": "
", + "start_blocks": "var num1;\r\nvar num2;\r\nvar answer;\r\nonEvent(\"solveButton\", \"click\", function(event) {\r\n answer = num1 + num2;\r\n setText(\"outputDisplay\", answer);\r\n});\r\nonEvent(\"firstNumberInput\", \"input\", function(event) {\r\n num1 = getText(\"firstNumberInput\");\r\n});\r\nonEvent(\"secondNumberInput\", \"input\", function(event) {\r\n num2 = getText(\"secondNumberInput\");\r\n});", "contained_level_names": null }, "published": true, diff --git a/dashboard/config/scripts/levels/CSDU6 - UI and Inputs - setProperty Image.level b/dashboard/config/scripts/levels/CSDU6 - UI and Inputs - setProperty Image.level new file mode 100644 index 0000000000000..ee441585d7a83 --- /dev/null +++ b/dashboard/config/scripts/levels/CSDU6 - UI and Inputs - setProperty Image.level @@ -0,0 +1,91 @@ + +
", + "contained_level_names": null + }, + "published": true, + "notes": "", + "level_concept_difficulty": { + } +}]]>
+ +
\ No newline at end of file diff --git a/dashboard/config/scripts/levels/CSDU6 - UI and Inputs - setProperty first level.level b/dashboard/config/scripts/levels/CSDU6 - UI and Inputs - setProperty first level.level new file mode 100644 index 0000000000000..8f42354612302 --- /dev/null +++ b/dashboard/config/scripts/levels/CSDU6 - UI and Inputs - setProperty first level.level @@ -0,0 +1,91 @@ + +
", + "contained_level_names": null + }, + "published": true, + "notes": "", + "level_concept_difficulty": { + } +}]]>
+ +
\ No newline at end of file diff --git a/dashboard/config/scripts/levels/CSDU6 - UI and Inputs - setProperty.level b/dashboard/config/scripts/levels/CSDU6 - UI and Inputs - setProperty.level index b963518b4e77c..c61f7a11d7f08 100644 --- a/dashboard/config/scripts/levels/CSDU6 - UI and Inputs - setProperty.level +++ b/dashboard/config/scripts/levels/CSDU6 - UI and Inputs - setProperty.level @@ -77,8 +77,9 @@ "fail_on_lint_errors": "false", "debugger_disabled": "false", "makerlab_enabled": "false", - "project_template_level_name": "CSDU6 color slider template", - "markdown_instructions": "# setProperty background-color\r\n\r\nIn order to set the color of the button you will need to use the `setProperty()` block to control the `background-color` of the button. Setting the background color with the `color` block will require all 3 slider values at once. So you will need to get the value of each slider inside each event handler. ", + "markdown_instructions": "# setProperty background-color\r\n\r\nChange the `background-color` of a button to a new random color each time it is clicked using `setProperty()`.", + "hide_share_and_remix": "false", + "start_html": "
", "contained_level_names": null }, "published": true, diff --git a/dashboard/config/scripts/levels/CSDU6 - UI and Inputs - setScreen.level b/dashboard/config/scripts/levels/CSDU6 - UI and Inputs - setScreen.level new file mode 100644 index 0000000000000..626d6d9cb97fb --- /dev/null +++ b/dashboard/config/scripts/levels/CSDU6 - UI and Inputs - setScreen.level @@ -0,0 +1,85 @@ + +
I'm taking computer science class at school!
", + "contained_level_names": null + }, + "published": true, + "notes": "", + "level_concept_difficulty": { + } +}]]>
+ +
\ No newline at end of file diff --git a/dashboard/config/scripts/levels/CSDU6 - lists - lists 1.level b/dashboard/config/scripts/levels/CSDU6 - lists - lists 1.level index 0a66060c1e441..75d68b296f3f9 100644 --- a/dashboard/config/scripts/levels/CSDU6 - lists - lists 1.level +++ b/dashboard/config/scripts/levels/CSDU6 - lists - lists 1.level @@ -81,6 +81,7 @@ "makerlab_enabled": "false", "markdown_instructions": "# Lists\r\n\r\nLet's practice adding items and printing out lists.\r\n\r\n* Add a `console.log()` command to print out the lettersList\r\n* Add the letter \"c\" to the letters list so it prints [a,b,c,d]", "start_blocks": "var numbersList = [40, 2, 18];\r\nconsole.log(numbersList);\r\n \r\nvar lettersList = [\"a\", \"b\", \"d\"];\r\n", + "hide_share_and_remix": "false", "contained_level_names": null }, "published": true, diff --git a/dashboard/config/scripts/levels/CSDU6 - lists - lists 5.level b/dashboard/config/scripts/levels/CSDU6 - lists - lists 5.level index ce4078108c095..b347cb543d466 100644 --- a/dashboard/config/scripts/levels/CSDU6 - lists - lists 5.level +++ b/dashboard/config/scripts/levels/CSDU6 - lists - lists 5.level @@ -79,7 +79,10 @@ "fail_on_lint_errors": "false", "debugger_disabled": "false", "makerlab_enabled": "false", - "markdown_instructions": "# Debug\r\n\r\n", + "markdown_instructions": "# Debug\r\n\r\nThis program is supposed to generate 3 random winning numbers from 1 to 5. There is a list of numbers but it seems like there are some bugs with generating the 3 random numbers when the Draw Numbers button is clicked. Can you debug the program? Check to make sure you can get every number in every slot of the winning numbers area. ", + "hide_share_and_remix": "false", + "start_html": "
", + "start_blocks": "var numbers = [1,2,3,4,5];\r\n\r\nonEvent(\"drawButton\", \"click\", function(event) {\r\n setText(\"firstNumber\", numbers[randomNumber(0, numbers.length-1)]);\r\n setText(\"secondNumber\", numbers[randomNumber(1, list.length-1)]);\r\n setText(\"thirdNumber\", list[randomNumber(0, numbers.length)]);\r\n});", "contained_level_names": null }, "published": true, diff --git a/dashboard/config/scripts/levels/CSDU6L06 - lists and colorLeds - debug.level b/dashboard/config/scripts/levels/CSDU6L06 - lists and colorLeds - debug.level index c7cde53b5de02..a4dc99b3e8d78 100644 --- a/dashboard/config/scripts/levels/CSDU6L06 - lists and colorLeds - debug.level +++ b/dashboard/config/scripts/levels/CSDU6L06 - lists and colorLeds - debug.level @@ -87,10 +87,7 @@ "markdown_instructions": "\r\n# Debug: colorLeds\r\n\r\nCan you debug the index values so that the rainbow shows up on the board like in the picture?\r\n\r\n", "start_blocks": "colorLeds[1].color(\"red\");\r\ncolorLeds[10].color(\"orange\");\r\ncolorLeds[1].color(\"yellow\");\r\ncolorLeds[4].color(\"green\");\r\ncolorLeds[3].color(\"blue\");\r\ncolorLeds[7].color(\"purple\");", "hide_share_and_remix": "false", - "contained_level_names": null, - "encrypted_examples": [ - - ] + "contained_level_names": null }, "published": true, "notes": "", diff --git a/dashboard/config/scripts/levels/CSDU6L06 - lists and colorLeds - light pattern off.level b/dashboard/config/scripts/levels/CSDU6L06 - lists and colorLeds - light pattern off.level new file mode 100644 index 0000000000000..4d2beb3ebac53 --- /dev/null +++ b/dashboard/config/scripts/levels/CSDU6L06 - lists and colorLeds - light pattern off.level @@ -0,0 +1,98 @@ + + + + \ No newline at end of file diff --git a/dashboard/config/scripts/levels/CSDU6L06 - lists and colorLeds - set color.level b/dashboard/config/scripts/levels/CSDU6L06 - lists and colorLeds - set color.level index 3cd21baea57cc..8c2ab7d3ccb2d 100644 --- a/dashboard/config/scripts/levels/CSDU6L06 - lists and colorLeds - set color.level +++ b/dashboard/config/scripts/levels/CSDU6L06 - lists and colorLeds - set color.level @@ -86,13 +86,10 @@ "debugger_disabled": "false", "makerlab_enabled": "true", "markdown_instructions": "# Adding Some Color\r\n\r\nYou probably noticed when you used `colorLeds[0].on()` in the last level, the LEDs turned on as white. If you don't specify a color, `on()` will turn on all three parts of the LED (red, green, and blue) to produce white. You'll see a new command in the toolbox called `colorLeds[0].color()` which lets you specify a color, either as a string like \"blue\" or an RGB value using color `color()` command.\r\n\r\n# Do This\r\n\r\nUse the `.color()` command to set each of the color LEDs to a different color.", - "contained_level_names": null, - "encrypted_examples": [ - - ], "start_blocks": "colorLeds[0].color(\"teal\");", "hide_share_and_remix": "false", - "palette_category_at_start": "circuit" + "palette_category_at_start": "circuit", + "contained_level_names": null }, "published": true, "notes": "", diff --git a/dashboard/config/scripts/levels/CSDU6L06 - lists and colorLeds - song list.level b/dashboard/config/scripts/levels/CSDU6L06 - lists and colorLeds - song list.level index 80ef4b997678a..fdbe90a2d8104 100644 --- a/dashboard/config/scripts/levels/CSDU6L06 - lists and colorLeds - song list.level +++ b/dashboard/config/scripts/levels/CSDU6L06 - lists and colorLeds - song list.level @@ -60,10 +60,7 @@ "markdown_instructions": "\r\n\r\n# colorLeds\r\n\r\nThe color LEDs can use the same basic commands that you used with the red LED, such as `on()` and `off()`. Using the provided buttons, write a program that turns on and off the bottom two color LEDs (the one's furthest away from the USB cable.\r\n\r\n# Do This\r\n\r\nAdd event handlers to the provided buttons \"on_button\" and \"off_button\" that turn on and off the bottom two color LEDs. Which positions in the `colorLeds` list are those two LEDs?\r\n\r\n", "hide_share_and_remix": "false", "start_html": "
", - "contained_level_names": null, - "encrypted_examples": [ - - ] + "contained_level_names": null }, "published": true, "notes": "", diff --git a/dashboard/config/scripts/levels/CSDU6L06 - lists and colorLeds - toggle.level b/dashboard/config/scripts/levels/CSDU6L06 - lists and colorLeds - toggle.level index 98253be84da09..7d3f3c0b684d6 100644 --- a/dashboard/config/scripts/levels/CSDU6L06 - lists and colorLeds - toggle.level +++ b/dashboard/config/scripts/levels/CSDU6L06 - lists and colorLeds - toggle.level @@ -87,12 +87,9 @@ "debugger_disabled": "false", "makerlab_enabled": "true", "markdown_instructions": "# Toggle\r\n\r\nThe `.toggle()` command works like a light switch - whenever you call it on an LED, the light will turn on if it was off, or off if it was on. This can be a really useful alternative to using both on and off.\r\n\r\n# Do This\r\n\r\nChoose a few LEDs and write a program that toggles them on and off when you click the Toggle button.\r\n", - "contained_level_names": null, - "encrypted_examples": [ - - ], "hide_share_and_remix": "false", - "start_html": "
" + "start_html": "
", + "contained_level_names": null }, "published": true, "notes": "", diff --git a/dashboard/config/scripts/levels/CSDU6L06 - lists and colorLeds -solo light pattern.level b/dashboard/config/scripts/levels/CSDU6L06 - lists and colorLeds -solo light pattern.level index 17b7bf6be6281..5e0f6bd2da9e1 100644 --- a/dashboard/config/scripts/levels/CSDU6L06 - lists and colorLeds -solo light pattern.level +++ b/dashboard/config/scripts/levels/CSDU6L06 - lists and colorLeds -solo light pattern.level @@ -84,8 +84,9 @@ "fail_on_lint_errors": "false", "debugger_disabled": "false", "makerlab_enabled": "false", - "markdown_instructions": "# Light Pattern\r\n\r\nCreate your own light pattern using blink, toggle, and color", + "markdown_instructions": "# Light Patterns\r\n\r\nThis app already has one light pattern program, which can be activated by clicking a button. Notice that we put this pattern into a function to make the code cleaner and clearer.\r\n\r\n# Do This\r\n\r\nCreate a light pattern function of your own - maybe the colors of your favorite holiday, college, sports team, or just colors you like!\r\n\r\nAfter you've created your new function, add a button and event handler so that you can switch between the two light patterns.", "project_template_level_name": "CSDU6 - L06 - Light Display Template", + "hide_share_and_remix": "false", "contained_level_names": null }, "published": true, diff --git a/dashboard/config/scripts/levels/Challenge: Input and UI.level b/dashboard/config/scripts/levels/Challenge: Input and UI.level index 60205b2049962..07b24a80920a5 100644 --- a/dashboard/config/scripts/levels/Challenge: Input and UI.level +++ b/dashboard/config/scripts/levels/Challenge: Input and UI.level @@ -173,7 +173,7 @@ "edit_code": true, "embed": "true", "instructions_important": "false", - "start_blocks": "onEvent(\"colorDropdown\", \"change\", function(event) {\r\n if (getText(\"colorDropdown\") == \"Red\") {\r\n setProperty(\"profileBackground\", \"background-color\", \"red\");\r\n } else if (getText(\"colorDropdown\") == \"Orange\") {\r\n setProperty(\"profileBackground\", \"background-color\", \"orange\");\r\n } else if (getText(\"colorDropdown\") == \"Yellow\") {\r\n setProperty(\"profileBackground\", \"background-color\", \"yellow\");\r\n } else if (getText(\"colorDropdown\") == \"Green\") {\r\n setProperty(\"profileBackground\", \"background-color\", \"green\");\r\n } else if (getText(\"colorDropdown\") == \"Blue\") {\r\n setProperty(\"profileBackground\", \"background-color\", \"blue\");\r\n } else if (getText(\"colorDropdown\") == \"Purple\") {\r\n setProperty(\"profileBackground\", \"background-color\", \"purple\");\r\n }\r\n});\r\nonEvent(\"ageSlider\", \"change\", function(event) {\r\n setText(\"ageDisplay\", getNumber(\"ageSlider\"));\r\n});\r\nonEvent(\"nameInput\", \"change\", function(event) {\r\n setText(\"nameDisplay\", getText(\"nameInput\"));\r\n});", + "start_blocks": "onEvent(\"colorDropdown\", \"change\", function(event) {\r\n if (getText(\"colorDropdown\") == \"Red\") {\r\n setProperty(\"profileBackground\", \"background-color\", \"red\");\r\n } else if (getText(\"colorDropdown\") == \"Orange\") {\r\n setProperty(\"profileBackground\", \"background-color\", \"orange\");\r\n } else if (getText(\"colorDropdown\") == \"Yellow\") {\r\n setProperty(\"profileBackground\", \"background-color\", \"yellow\");\r\n } else if (getText(\"colorDropdown\") == \"Green\") {\r\n setProperty(\"profileBackground\", \"background-color\", \"green\");\r\n } else if (getText(\"colorDropdown\") == \"Blue\") {\r\n setProperty(\"profileBackground\", \"background-color\", \"blue\");\r\n } else if (getText(\"colorDropdown\") == \"Purple\") {\r\n setProperty(\"profileBackground\", \"background-color\", \"purple\");\r\n }\r\n});\r\nonEvent(\"ageSlider\", \"change\", function(event) {\r\n setText(\"ageDisplay\", getNumber(\"ageSlider\"));\r\n});\r\nonEvent(\"nameInput\", \"input\", function(event) {\r\n setText(\"nameDisplay\", getText(\"nameInput\"));\r\n});", "is_k1": "false", "skip_instructions_popup": "false", "never_autoplay_video": "false", @@ -207,6 +207,7 @@ "debugger_disabled": "false", "makerlab_enabled": "false", "markdown_instructions": "# Stop\r\n\r\nYou have reached the end of the lesson. Check in with your teacher to see if you should work on the challenge level before you start. This is an extra challenge to practice your skills if you have time. If you don't have time for it no big deal!\r\n\r\n# Challenge\r\n\r\nGo to Full Game Lab and try to make your own profile creator like the example program on this level.", + "hide_share_and_remix": "false", "contained_level_names": null }, "published": true, diff --git a/dashboard/config/scripts/levels/Challenge: Lights Picker.level b/dashboard/config/scripts/levels/Challenge: Lights Picker.level index 719c3d57ed8e7..915ac69737dfc 100644 --- a/dashboard/config/scripts/levels/Challenge: Lights Picker.level +++ b/dashboard/config/scripts/levels/Challenge: Lights Picker.level @@ -84,9 +84,10 @@ "fail_on_lint_errors": "false", "debugger_disabled": "false", "makerlab_enabled": "false", - "markdown_instructions": "# Light Pattern\r\n\r\nFind a partner and bring your light patterns together.\r\n\r\nSet up the app so the user can use what light pattern they want to see. You should put each of your light displays in a function to make this easier", + "markdown_instructions": "# Challenge: More Patterns\r\n\r\nAdd some more patterns to your app. Find a partner and add their pattern as an option. Make sure to put each pattern into its own function.", "project_template_level_name": "CSDU6 - L06 - Light Display Template", "start_html": "
", + "hide_share_and_remix": "false", "contained_level_names": null }, "published": true, diff --git a/dashboard/config/scripts/levels/Challenge: List of Notes.level b/dashboard/config/scripts/levels/Challenge: List of Notes.level index d7d2faebd648c..5d0ea233789c9 100644 --- a/dashboard/config/scripts/levels/Challenge: List of Notes.level +++ b/dashboard/config/scripts/levels/Challenge: List of Notes.level @@ -79,12 +79,11 @@ "fail_on_lint_errors": "false", "debugger_disabled": "false", "makerlab_enabled": "false", - "markdown_instructions": "# Challenge: \r\n\r\nCheck with your teacher before starting the challenge.\r\n", + "markdown_instructions": "# Challenge: \r\n\r\nCheck with your teacher before starting the challenge.\r\n\r\n**Starter Code:** An array with the name of the 30 buttons on the screen (not including the New Pattern button) is provided for you. \r\n\r\n**Write Code:** Each time the New Pattern button is clicked at least one random button from the list is set to a random color.\r\n", "hide_share_and_remix": "false", - "contained_level_names": null, - "encrypted_examples": [ - - ] + "start_blocks": "var list = [\"buttonA1\", \"buttonA2\", \"buttonA3\", \"buttonA4\", \"buttonA5\",\r\n\"buttonB1\", \"buttonB2\", \"buttonB3\", \"buttonB4\", \"buttonB5\",\r\n\"buttonC1\", \"buttonC2\", \"buttonC3\", \"buttonC4\", \"buttonC5\",\r\n\"buttonD1\", \"buttonD2\", \"buttonD3\", \"buttonD4\", \"buttonD5\",\r\n\"buttonE1\", \"buttonE2\", \"buttonE3\", \"buttonE4\", \"buttonE5\",\r\n\"buttonF1\", \"buttonF2\", \"buttonF3\", \"buttonF4\", \"buttonF5\"\r\n];", + "start_html": "
", + "contained_level_names": null }, "published": true, "notes": "", diff --git a/dashboard/config/scripts/levels/Challenge: Random Button Colors.level b/dashboard/config/scripts/levels/Challenge: Random Button Colors.level new file mode 100644 index 0000000000000..5d80292038df3 --- /dev/null +++ b/dashboard/config/scripts/levels/Challenge: Random Button Colors.level @@ -0,0 +1,94 @@ + +
", + "contained_level_names": null + }, + "published": true, + "notes": "", + "level_concept_difficulty": { + } +}]]>
+ +
\ No newline at end of file diff --git a/dashboard/config/scripts/levels/Course 4 SCF 1b.level b/dashboard/config/scripts/levels/Course 4 SCF 1b.level index a83ddc3431a12..cbbb684aec30a 100644 --- a/dashboard/config/scripts/levels/Course 4 SCF 1b.level +++ b/dashboard/config/scripts/levels/Course 4 SCF 1b.level @@ -36,8 +36,8 @@ "honey_goal": "6", "authored_hints": "[{\"hint_class\":\"content\",\"hint_markdown\":\"Notice that the shape of all honey points is similar. \\n\\nGood place for a function!\",\"hint_id\":\"Course_4_SCF_1b_a\",\"hint_type\":\"general\",\"tts_url\":\"https://tts.code.org/sharon22k/180/100/a3c2a0acbb5e3a7d671d3498a64efbdb/Course 4 SCF 1b.mp3\"},{\"hint_class\":\"pointer\",\"hint_markdown\":\"Look at this idea for how the bee might travel: \\n\\n![](https://images.code.org/996ab4a2de6048cbb99b84c56cc4ad61-image-1469726859769.png)\",\"hint_id\":\"Course_4_SCF_1b_b\",\"hint_type\":\"general\",\"tts_url\":\"https://tts.code.org/sharon22k/180/100/b7f8109f539574b8d57d2d30afd8ef34/Course 4 SCF 1b.mp3\"},{\"hint_class\":\"content\",\"hint_markdown\":\"You should consider using a `for loop` for the distance the bee travels.\",\"hint_id\":\"Course_4_SCF_1b_c\",\"hint_type\":\"general\",\"tts_url\":\"https://tts.code.org/sharon22k/180/100/45851912d82060dc102040d548e49a19/Course 4 SCF 1b.mp3\"},{\"hint_class\":\"bottom-out\",\"hint_markdown\":\"**Solution:**\\n\\n![Solution Blocks](https://images.code.org/15ef56cd19a1efd510527345f077d6eb-image-1469726894398.png)\",\"hint_id\":\"Course_4_SCF_1b_d\",\"hint_type\":\"general\",\"tts_url\":\"https://tts.code.org/sharon22k/180/100/58958c365db37efc69a4c0b4439a4989/Course 4 SCF 1b.mp3\"}]", "instructions_important": "true", - "contained_level_names": null, - "hide_share_and_remix": "false" + "hide_share_and_remix": "false", + "contained_level_names": null }, "published": true, "notes": "", diff --git a/dashboard/config/scripts/levels/NEW Course 4 Artist Functions 11.level b/dashboard/config/scripts/levels/NEW Course 4 Artist Functions 11.level index b575d149f059d..3be8ea0702919 100644 --- a/dashboard/config/scripts/levels/NEW Course 4 Artist Functions 11.level +++ b/dashboard/config/scripts/levels/NEW Course 4 Artist Functions 11.level @@ -22,7 +22,7 @@ "use_contract_editor": "false", "embed": "false", "disable_sharing": "false", - "markdown_instructions": "Now we want to create a new function called `draw a line of squares` that draws six squares all in a row. \r\n\r\nCan you build this function using this `draw a square 20` function that we created for you?\r\n

\r\n\r\n*Note: See that we've changed the pen to be much thinner. Click \"edit\" on the the `draw a square 20` function to see how!*", + "markdown_instructions": "Now we want to create a new function called `draw a line of squares` that draws six squares all in a row. \r\n\r\nCan you build this function using this `draw a square 20` function that we created for you?\r\n

\r\n\r\n*Note: See that we've changed the pen to be much thinner. Click \"edit\" on the `draw a square 20` function to see how!*", "contract_highlight": "false", "contract_collapse": "false", "examples_highlight": "false", @@ -32,6 +32,10 @@ "disable_examples": "false", "examples_required": "false", "never_autoplay_video": "false", + "instructions_important": "false", + "hide_share_and_remix": "false", + "discard_background": "false", + "permitted_errors": "0", "contained_level_names": null }, "published": true, @@ -45,6 +49,13 @@ + + + + + + + draw a 6 squares next to one another 6 squares long @@ -60,7 +71,7 @@ - 1 + 2 @@ -91,13 +102,6 @@ - - - - - - - @@ -123,27 +127,27 @@ - + draw a square of size 20 pixels draw a square 20 - + 4 - + - - 1 + + 2 - + moveForward 20 - + turnLeft 90 @@ -175,7 +179,7 @@ - 1 + 2 @@ -206,6 +210,13 @@ + + + + + + + draw a line of squares @@ -234,13 +245,6 @@ - - - - - - - diff --git a/dashboard/config/scripts/levels/NEW Course 4 Bee For Loops 10a.level b/dashboard/config/scripts/levels/NEW Course 4 Bee For Loops 10a.level index 7997e3cc563d8..f9adb1ce5d6d2 100644 --- a/dashboard/config/scripts/levels/NEW Course 4 Bee For Loops 10a.level +++ b/dashboard/config/scripts/levels/NEW Course 4 Bee For Loops 10a.level @@ -74,7 +74,9 @@ - + + moveForward + turnRight diff --git a/dashboard/config/scripts/levels/NEW Course 4 Bee For Loops 2.level b/dashboard/config/scripts/levels/NEW Course 4 Bee For Loops 2.level index bd7a01c44b4dc..dcfa022424269 100644 --- a/dashboard/config/scripts/levels/NEW Course 4 Bee For Loops 2.level +++ b/dashboard/config/scripts/levels/NEW Course 4 Bee For Loops 2.level @@ -32,7 +32,8 @@ "never_autoplay_video": "false", "fast_get_nectar_animation": "false", "markdown_instructions": "Add the code necessary to make sure the bee collects all the nectar. \r\n\r\nLook at how much code you need for this puzzle! \r\n(We'll learn a simpler way in the next puzzle.)", - "step_speed": "1" + "step_speed": "1", + "contained_level_names": null }, "published": true, "notes": "", @@ -107,7 +108,6 @@ 1 - @@ -125,17 +125,20 @@ - + + moveForward - + + moveForward - + + moveForward @@ -147,7 +150,8 @@ - + + moveForward @@ -159,7 +163,8 @@ - + + moveForward diff --git a/dashboard/config/scripts/levels/NEW Course 4 Bee For Loops 3.level b/dashboard/config/scripts/levels/NEW Course 4 Bee For Loops 3.level index 1055ba8d8a17a..6f368837dece8 100644 --- a/dashboard/config/scripts/levels/NEW Course 4 Bee For Loops 3.level +++ b/dashboard/config/scripts/levels/NEW Course 4 Bee For Loops 3.level @@ -33,7 +33,8 @@ "examples_required": "false", "never_autoplay_video": "false", "fast_get_nectar_animation": "false", - "step_speed": "1" + "step_speed": "1", + "contained_level_names": null }, "published": true, "notes": "", @@ -52,22 +53,23 @@ counter - + 1 - + 5 - + 1 - + + moveForward @@ -89,9 +91,15 @@ - - - + + counter + + + 0 + + + counter + @@ -127,7 +135,8 @@ - + + moveForward diff --git a/dashboard/config/scripts/levels/NEW Course 4 Bee For Loops 4 4.level b/dashboard/config/scripts/levels/NEW Course 4 Bee For Loops 4 4.level index 4bc459bbecfb8..f31efda910f7d 100644 --- a/dashboard/config/scripts/levels/NEW Course 4 Bee For Loops 4 4.level +++ b/dashboard/config/scripts/levels/NEW Course 4 Bee For Loops 4 4.level @@ -31,7 +31,8 @@ "ideal": "11", "markdown_instructions": "Now we need to `move forward` `counter` times, then `get nectar` `counter` times. Can you use two `repeat` loops to solve this challenge?", "never_autoplay_video": "false", - "fast_get_nectar_animation": "false" + "fast_get_nectar_animation": "false", + "contained_level_names": null }, "published": true, "notes": "", @@ -72,7 +73,9 @@ - + + moveForward + @@ -129,7 +132,9 @@ - + + moveForward + @@ -139,7 +144,9 @@ - + + moveForward + diff --git a/dashboard/config/scripts/levels/NEW Course 4 Bee For Loops 5.level b/dashboard/config/scripts/levels/NEW Course 4 Bee For Loops 5.level index 90e014d103ff5..9aed408bc3a7d 100644 --- a/dashboard/config/scripts/levels/NEW Course 4 Bee For Loops 5.level +++ b/dashboard/config/scripts/levels/NEW Course 4 Bee For Loops 5.level @@ -33,7 +33,8 @@ "examples_required": "false", "never_autoplay_video": "false", "step_speed": "1", - "fast_get_nectar_animation": "false" + "fast_get_nectar_animation": "false", + "contained_level_names": null }, "published": true, "notes": "", @@ -76,7 +77,9 @@ - + + moveForward + @@ -120,7 +123,8 @@ - + + moveForward diff --git a/dashboard/config/scripts/levels/NEW Course 4 Bee For Loops 6.level b/dashboard/config/scripts/levels/NEW Course 4 Bee For Loops 6.level index 8914756831c90..7e6f02eae1bce 100644 --- a/dashboard/config/scripts/levels/NEW Course 4 Bee For Loops 6.level +++ b/dashboard/config/scripts/levels/NEW Course 4 Bee For Loops 6.level @@ -31,7 +31,8 @@ "disable_examples": "false", "examples_required": "false", "never_autoplay_video": "false", - "fast_get_nectar_animation": "true" + "fast_get_nectar_animation": "true", + "contained_level_names": null }, "published": true, "notes": "", @@ -71,7 +72,9 @@ - + + moveForward + diff --git a/dashboard/config/scripts/levels/NEW Course 4 Bee For Loops 7.level b/dashboard/config/scripts/levels/NEW Course 4 Bee For Loops 7.level index 42b697b29a6b2..dd1c4fc6b8e9e 100644 --- a/dashboard/config/scripts/levels/NEW Course 4 Bee For Loops 7.level +++ b/dashboard/config/scripts/levels/NEW Course 4 Bee For Loops 7.level @@ -74,7 +74,9 @@ - + + moveForward + turnRight @@ -144,7 +146,9 @@ - + + moveForward + diff --git a/dashboard/config/scripts/levels/NEW Course 4 Bee For Loops 8.level b/dashboard/config/scripts/levels/NEW Course 4 Bee For Loops 8.level index 661f5c98d5849..737c20cd31703 100644 --- a/dashboard/config/scripts/levels/NEW Course 4 Bee For Loops 8.level +++ b/dashboard/config/scripts/levels/NEW Course 4 Bee For Loops 8.level @@ -68,7 +68,9 @@ - + + moveForward + @@ -77,7 +79,9 @@ - + + moveForward + @@ -139,7 +143,8 @@ - + + moveForward diff --git a/dashboard/config/scripts/levels/Stop: Review Getters and Setters.level b/dashboard/config/scripts/levels/Stop: Review Getters and Setters.level index 972fd18cf7387..6bffe3f8ae7a6 100644 --- a/dashboard/config/scripts/levels/Stop: Review Getters and Setters.level +++ b/dashboard/config/scripts/levels/Stop: Review Getters and Setters.level @@ -5,7 +5,7 @@ "level_num": "custom", "user_id": 155, "properties": { - "markdown_instructions": "# Stop\r\n\r\n## Reflection\r\n\r\nQuestions:\r\n\r\n* What is the difference between getters and setters?\r\n* Why would you want to save the information from a getter in a variable?\r\n\r\nOnce you have answered the questions above check with your teacher.\r\n\r\n## Extension\r\n\r\nCheck with your teacher if they want you to keep going on do the extension below:\r\n\r\n* Return to level ?? and try to make your alarm app play a sound when the alarm is triggered. Make the sound stop playing when the alarm is stopped. For this you will need some blocks that are not available in the toolbox on the level. Click \"Remix\" at the top of the level to get the full toolbox.\r\n\r\n* Return to level ?? and add an image UI element to the picker level with the dropdown. Figure out how to make the choice from the dropdown determine what image that shows. For this you will need some blocks that are not available in the toolbox on the level. Click \"Remix\" at the top of the level to get the full toolbox.\r\n", + "markdown_instructions": "# Reflection\r\n\r\nQuestions:\r\n\r\n* What is the difference between getters and setters?\r\n* Why would you want to save the information from a getter in a variable?", "instructions_important": "false", "submittable": "false", "allow_user_uploads": "false", diff --git a/dashboard/config/scripts/levels/allthethings level dataTables.level b/dashboard/config/scripts/levels/allthethings level dataTables.level index c16f6c7a435d6..5af19bb86d367 100644 --- a/dashboard/config/scripts/levels/allthethings level dataTables.level +++ b/dashboard/config/scripts/levels/allthethings level dataTables.level @@ -158,16 +158,13 @@ "slider_speed": "1.0", "lock_zero_param_functions": "false", "execute_palette_apis_only": "false", - "contained_level_names": null, - "encrypted_examples": [ - - ], "instructions_important": "false", "hide_share_and_remix": "false", "data_tables": "{\r\n \"table_name2\": [{ \"city\": \"Seattle\", \"state\": \"WA\" }, { \"city\": \"Chicago\", \"state\": \"IL\"}]\r\n }", "show_debug_watch": "false", "fail_on_lint_errors": "false", - "makerlab_enabled": "false" + "makerlab_enabled": "false", + "contained_level_names": null }, "published": true, "notes": "", diff --git a/dashboard/config/scripts/levels/courseA_maze_seq13.level b/dashboard/config/scripts/levels/courseA_maze_seq13.level index 4ad350057eb31..978924be6b3ad 100644 --- a/dashboard/config/scripts/levels/courseA_maze_seq13.level +++ b/dashboard/config/scripts/levels/courseA_maze_seq13.level @@ -27,10 +27,9 @@ "disable_examples": "false", "authored_hints": "[{\"hint_class\":\"pointer\",\"hint_markdown\":\"If the path you need is unclear, use your finger to trace your way from the bird to the pig.\",\"hint_id\":\"courseA_maze_seq13_a\",\"hint_type\":\"general\",\"tts_url\":\"https://tts.code.org/sharon22k/180/100/5443062fa79fcc2597ecd715ce7e9657/courseA_maze_seq13.mp3\"}]", "instructions_important": "false", - "contained_level_names": null, "step_speed": "3", "hide_share_and_remix": "false", - "maze_data": null + "contained_level_names": null }, "published": true, "notes": "\"Free Play\"", diff --git a/dashboard/config/scripts/levels/courseB_partner_foos_link.level b/dashboard/config/scripts/levels/courseB_partner_foos_link.level new file mode 100644 index 0000000000000..75489fa48171e --- /dev/null +++ b/dashboard/config/scripts/levels/courseB_partner_foos_link.level @@ -0,0 +1,17 @@ + + + diff --git a/dashboard/config/scripts/levels/courseC_harvester_loops11.level b/dashboard/config/scripts/levels/courseC_harvester_loops11.level index 64955de4f8d6c..1ec801b034874 100644 --- a/dashboard/config/scripts/levels/courseC_harvester_loops11.level +++ b/dashboard/config/scripts/levels/courseC_harvester_loops11.level @@ -32,8 +32,8 @@ "fast_get_nectar_animation": "false", "ideal": "8", "step_speed": "2", - "contained_level_names": null, - "hide_share_and_remix": "false" + "hide_share_and_remix": "false", + "contained_level_names": null }, "published": true, "notes": "", diff --git a/dashboard/config/scripts/responding_to_user_input.external b/dashboard/config/scripts/responding_to_user_input.external index af7c2913584ab..5e7b8c33c10dc 100644 --- a/dashboard/config/scripts/responding_to_user_input.external +++ b/dashboard/config/scripts/responding_to_user_input.external @@ -41,7 +41,7 @@ It's important to understand in Event-Driven programming that: App Lab's `onEvent` block is a type of event-handling function called an **Event Listener**. It wraps all of the setup up you need to do event handling into one command that has several parts. Here is an example with everything labeled: - +