Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DTS (Levelbuilder > Staging) [robo-dts] #19978

Merged
merged 9 commits into from
Jan 12, 2018
2 changes: 2 additions & 0 deletions dashboard/config/locales/scripts.en.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4606,6 +4606,8 @@ en:
name: Circuits and Physical Prototypes
Accelerometer:
name: Accelerometer
Functions with Parameters:
name: Functions with Parameters
workshop-gamelab:
title: Game Lab Workshop
description_audience: Teachers attending an in-person Game Lab Workshop
Expand Down
66 changes: 30 additions & 36 deletions dashboard/config/scripts/csd6-draft.script
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ named_level 'CSD U6L01 TFMD'
named_level 'CSDU6 Innovation'

stage 'Designing Screens with Code', flex_category: 'csd6_1'
named_level 'CSD U6L02 TFMD'
named_level 'CSD U6 setProperty Map'
level 'CSD U6 setProperty predict app', progression: 'Setting Properties'
level 'CSD U6 setProperty Text', progression: 'Setting Properties'
Expand All @@ -26,6 +27,7 @@ level 'CSD U6 emotion machine 3', progression: 'Building an App'
level 'CSD U6 emotion machine 4', progression: 'Building an App'

stage 'The Circuit Playground', flex_category: 'csd6_1'
named_level 'CSD U6L03 TFMD'
named_level 'CSD LEDs Map'
level 'CSDU6 Circuit Playground Test', progression: 'Using the LED'
level 'CSD U6 test LED', progression: 'Using the LED'
Expand All @@ -40,10 +42,12 @@ level 'CSD U6 create LED app', progression: 'LED Apps'
level 'CSD U6 create LED app 2', progression: 'LED Apps'

stage 'Input Unplugged', flex_category: 'csd6_1'
named_level 'CSD U6L04 TFMD'
level 'CSDU6 GameLab Input 1', progression: 'Input Examples'
level 'CSDU6 AppLab Input 1', progression: 'Input Examples'

stage 'Board Events', flex_category: 'csd6_1'
named_level 'CSD U6L05 TFMD'
named_level 'CSD onBoardEvent Map'
level 'CSDU6 - button LED prediction', progression: 'Board Events'
level 'CSDU6 - LED buttonL', progression: 'Board Events'
Expand All @@ -59,6 +63,7 @@ level 'CSDU6 - buzzer duration buttons', progression: 'The Buzzer'
bonus 'CSDU6 - board event challenge'

stage 'Getting Properties', flex_category: 'csd6_1'
named_level 'CSD U6L06 TFMD'
named_level 'CSD U6 getProperty Map'
level 'CSD U6 getProperty Demo', progression: 'Getting Properties'
level 'CSD U6 getProperty input', progression: 'Getting Properties'
Expand All @@ -77,6 +82,7 @@ level 'CSD U6 design motorcycle', progression: 'Motorcycle'
bonus 'CSD U6 challenge motorcycle'

stage 'Analog Input', flex_category: 'csd6_1'
named_level 'CSD U6L07 TFMD'
named_level 'CSDU6 - sensors experiment'
named_level 'CSD Board Sensors Map'
level 'CSD U6 analog sound', progression: 'Reading Sensors'
Expand All @@ -94,6 +100,7 @@ level 'CSD U6 analog rgb 3', progression: 'Sensors to Colors'
named_level 'CSD U6 analog challenge'

stage 'The Program Design Process', flex_category: 'csd6_1'
named_level 'CSD U6L08 TFMD'
named_level 'CSD U6 emoji race demo'
named_level 'CSD U6 tugowar stop'
level 'CSD U6 tugowar design 1', progression: 'Screen Design'
Expand All @@ -109,6 +116,7 @@ level 'CSD U6 tugowar buzzer', progression: 'Checking for a Winner'
named_level 'CSD U6 tugowar final'

stage 'Project: Make a Game', flex_category: 'csd6_1'
named_level 'CSD U6L09 TFMD'
named_level 'CSD U6 tugowar demo'
named_level 'CSD U6 game project stop'
level 'CSD U6 game project screens', progression: 'Screen Design'
Expand All @@ -120,6 +128,7 @@ level 'CSD U6 game project finish', progression: 'Finishing Touches'
assessment 'csd-pulse-check-survey-1-levelgroup U6Ch1', progression: 'Reflection'

stage 'Arrays', flex_category: 'csd6_2'
named_level 'CSD U6L10 TFMD'
named_level 'CSD U6 arrays intro'
level 'CSD U6 arrays select predict', progression: 'Introduction to Arrays'
level 'CSDU6 arrays select rainbow', progression: 'Introduction to Arrays'
Expand All @@ -138,6 +147,7 @@ level 'CSD U6 light pattern off', progression: 'Light Show'
bonus 'CSD U6 light pattern challenge', progression: 'Challenge Levels'

stage 'Making Music', flex_category: 'csd6_2'
named_level 'CSD U6L11 TFMD'
level 'CSDU6 circuit playground piano', progression: 'Making Sounds'
level 'CSDU6 frequency modification', progression: 'Making Sounds'
level 'CSDU6 frequency creation', progression: 'Making Sounds'
Expand All @@ -155,6 +165,7 @@ bonus 'CSDU6 buzzer 2d arrays'
bonus 'CSDU6 buzzer.stop'

stage 'Arrays and For Loops', flex_category: 'csd6_2'
named_level 'CSD U6L12 TFMD'
level 'CSD U6 for loop click predict', progression: 'Programs that Repeat'
level 'CSD U6 for loop click exit', progression: 'Programs that Repeat'
named_level 'CSD U6 for loop map'
Expand All @@ -174,54 +185,37 @@ bonus 'CSD U6 for loop led bonus 2'
bonus 'CSD U6 for loop led bonus 3'

stage 'Accelerometer', flex_category: 'csd6_2'
named_level 'CSD U6L13 TFMD'
level 'CSD U6 Airplane predict', progression: 'Orientation'
level 'CSD U6 directional leds pitch', progression: 'Orientation'
level 'CSD U6 directional LEDs roll', progression: 'Orientation'
level 'CSD U6 direction theremin', progression: 'Orientation'

stage 'For Loops', flex_category: 'csd6_2'
named_level 'CSD: For Loops'
named_level 'CSD: For Loop'
level 'CSDU6 - for loop - 2', progression: 'Introduction to For Loops'
level 'CSDU6 - for loop - 6', progression: 'Introduction to For Loops'
level 'CSDU6 - for loop - predict repeat', progression: 'Introduction to For Loops'
level 'CSDU6 - for loop - predict print', progression: 'Introduction to For Loops'

stage 'Lists and For Loops', flex_category: 'csd6_2'
named_level 'CSD: Lists with For Loops'
level 'CSDU6 - for loop - 5', progression: 'Looping Over Lists'
level 'CSDU6 - for loop - 10', progression: 'Looping Over Lists'
level 'CSDU6 - for loop - 1', progression: 'Looping Over Lists'
level 'CSDU6 - for loop - button grid 1', progression: 'Looping Over Lists'
level 'CSDU6 - for loop - color buttons', progression: 'Looping Over Lists'
level 'CSDU6 - for loop - color buttons with for', progression: 'Looping Over Lists'
level 'CSDU6 - for loop - why for', progression: 'Looping Over Lists'
named_level 'Stop: Check with Teacher'
level 'CSD - for loop - on off', progression: 'For Loops and LEDs'
level 'CSDU6 - for loops - lights picker', progression: 'For Loops and LEDs'

stage 'Sensor Applications', flex_category: 'csd6_2'
named_level 'CSDU6 - sensor theremin demo'
level 'CSDU6 - sensors theremin 1', progression: 'Light Theremin Project'
level 'CSDU6 - sensors theremin 2', progression: 'Light Theremin Project'
level 'CSDU6 - sensors theremin 3', progression: 'Light Theremin Project'
named_level 'CSDU6 - sensor vu meter demo'
level 'CSDU6 - sensors vu meter 1', progression: 'VU Meter Project'
level 'CSDU6 - sensors vu meter 2', progression: 'VU Meter Project'
level 'CSDU6 - sensors vu meter 3', progression: 'VU Meter Project'
named_level 'CSDU6 - sensor love tester demo'
level 'CSDU6 - sensors love tester 1', progression: 'Love Tester Project'
level 'CSDU6 - sensors love tester 2', progression: 'Love Tester Project'
level 'CSDU6 - sensors love tester 3', progression: 'Love Tester Project'
named_level 'CSDU6 - sensor projects challenge'
level 'CSD U6 stillness game predict code', progression: 'Accelerometer Events'

stage 'Functions with Parameters', flex_category: 'csd6_2'
named_level 'CSD U6L14 TFMD'
level 'CSD U6 params predict', progression: 'Functions with Parameters'
level 'CSD U6 params modify clouds', progression: 'Functions with Parameters'
level 'CSD U6 params modify planes', progression: 'Functions with Parameters'
level 'CSD U6 params create colors', progression: 'Functions with Parameters'
level 'CSD U6 iter predict bubbles', progression: 'Iteration and Parameters'
level 'CSD U6 iter modify bugs', progression: 'Iteration and Parameters'
level 'CSD U6 iter create notes', progression: 'Iteration and Parameters'
level 'CSD U6 params starchaser intro', progression: 'Star Chaser'
level 'CSD U6 params starchaser 1', progression: 'Star Chaser'
level 'CSD U6 params starchaser 2', progression: 'Star Chaser'
level 'CSD U6 params starchaser 3', progression: 'Star Chaser'
level 'CSD U6 params starchaser 4', progression: 'Star Chaser'

stage 'Circuits and Physical Prototypes', flex_category: 'csd6_2'
named_level 'CSD U6L15 TFMD'
level 'CSD U6 circuit predict', progression: 'Simple Circuits'
level 'CSD U6 circuit LED map', progression: 'Simple Circuits'
level 'CSD U6 circuit pinMode', progression: 'Simple Circuits'
level 'CSD U6 circuit createLed', progression: 'Simple Circuits'

stage 'Project: Prototype an Innovation', flex_category: 'csd6_2'
named_level 'CSD U6L16 TFMD'
level 'CSDU6 - final project 1', progression: 'Project Work'
level 'CSDU6 - final project 2', progression: 'Project Work'
level 'CSDU6 - final project 3', progression: 'Project Work'
Expand Down
66 changes: 66 additions & 0 deletions dashboard/config/scripts/levels/CSD U6 circuit multi led.level
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
<Applab>
<config><![CDATA[{
"game_id": 41,
"created_at": "2018-01-12T19:59:41.000Z",
"level_num": "custom",
"user_id": 1,
"properties": {
"skin": "applab",
"code_functions": {
"pinMode": null,
"digitalWrite": null,
"var myLed = createLed": null,
"led.on": null,
"led.off": null,
"led.blink": null,
"led.toggle": null
},
"edit_code": true,
"embed": "false",
"instructions_important": "false",
"start_blocks": "// Create a new software LED object\r\n// attached to pin 2\r\nvar myLed = createLed(2);\r\n\r\n// Blink myLed\r\n",
"is_k1": "false",
"skip_instructions_popup": "false",
"never_autoplay_video": "false",
"disable_param_editing": "true",
"disable_variable_editing": "false",
"disable_procedure_autopopulate": "false",
"top_level_procedure_autopopulate": "false",
"use_modal_function_editor": "false",
"use_contract_editor": "false",
"contract_highlight": "false",
"contract_collapse": "false",
"examples_highlight": "false",
"examples_collapse": "false",
"examples_required": "false",
"definition_highlight": "false",
"definition_collapse": "false",
"disable_examples": "false",
"hide_share_and_remix": "false",
"droplet_tooltips_disabled": "false",
"lock_zero_param_functions": "false",
"disable_if_else_editing": "false",
"free_play": "false",
"submittable": "false",
"show_turtle_before_run": "false",
"autocomplete_palette_apis_only": "false",
"execute_palette_apis_only": "false",
"design_mode_at_start": "false",
"hide_design_mode": "false",
"beginner_mode": "false",
"hide_view_data_button": "true",
"show_debug_watch": "false",
"expand_debugger": "false",
"fail_on_lint_errors": "false",
"debugger_disabled": "false",
"makerlab_enabled": "true",
"markdown_instructions": "# Creating Board Objects\r\n\r\nYou might have noticed that the new blocks we're using are in a different toolbox drawer. The **Circuit** drawer contains all of the board objects that are built into the Circuit Playground, but when you start wiring your own circuits the Maker Toolkit no longer knows where everything is.\r\n\r\nThe new **Maker** drawer contains general purpose commands instead of ones that are customized for the Circuit Playground. In addition to the `pinMode()` and `digitalWrite()` commands you've seen, it includes commands to create new objects on the board that can be programmed in the same way as the blocks in the **Circuit** drawer. The `var myLed = createLed()` command, for example, creates a new LED object that behaves just like the `led` blocks you've been using.\r\n\r\n# Do This\r\n\r\nNow that you're creating new board objects that we don't have blocks for, you'll need to work in text mode. You can still drag out blocks that you're familiar with from the **Circuit** drawer, you'll just need to change the name of the object.\r\n\r\n* Keep your LED wired just as it was before (connected to pin 2)\r\n* Make sure you're in text mode, not block mode.\r\n* Drag out an `led.blink()` block below the comment `// Blink myLed`.\r\n* Replace the text `led` with `myLed`.\\\r\n* Test your code.",
"text_mode_at_start": "true",
"contained_level_names": null
},
"published": true,
"notes": "",
"audit_log": "[{\"changed_at\":\"2018-01-05 20:35:24 +0000\",\"changed\":[\"notes\",\"code_functions\",\"contained_level_names\"],\"changed_by_id\":1,\"changed_by_email\":\"josh@code.org\"},{\"changed_at\":\"2018-01-05 20:51:32 +0000\",\"changed\":[\"code_functions\",\"start_blocks\",\"hide_view_data_button\"],\"changed_by_id\":1,\"changed_by_email\":\"josh@code.org\"},{\"changed_at\":\"2018-01-05 20:53:36 +0000\",\"changed\":[\"code_functions\",\"contained_level_names\"],\"changed_by_id\":1,\"changed_by_email\":\"josh@code.org\"},{\"changed_at\":\"2018-01-06 01:06:27 +0000\",\"changed\":[\"code_functions\",\"start_blocks\",\"markdown_instructions\",\"contained_level_names\"],\"changed_by_id\":1,\"changed_by_email\":\"josh@code.org\"}]"
}]]></config>
<blocks/>
</Applab>
9 changes: 6 additions & 3 deletions dashboard/config/scripts/levels/CSD U6 circuit pinMode.level
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
"edit_code": true,
"embed": "false",
"instructions_important": "false",
"start_blocks": "// Wire the positive (+) side of an LED to pin 2\r\n// and the negative (-) side to ground (GND)\r\n\r\n// Tell the board to use pin 2 for output\r\npinMode(2, \"output\");\r\n\r\n// Turn pin 2 on\r\ndigitalWrite(13, 1);",
"start_blocks": "// Wire the positive (+) side of an LED to pin 2\r\n// and the negative (-) side to ground (GND)\r\n\r\n// Tell the board to use pin 2 for output\r\npinMode(2, \"output\");\r\n\r\n// Turn pin 2 on\r\ndigitalWrite(2, 1);",
"is_k1": "false",
"skip_instructions_popup": "false",
"never_autoplay_video": "false",
Expand Down Expand Up @@ -50,11 +50,14 @@
"debugger_disabled": "false",
"makerlab_enabled": "true",
"markdown_instructions": "# Wire a Circuit\r\n\r\nYou can use any of the numbered pads to add additional circuits to your board. Let's use pin 2 to add another LED.\r\n\r\n# Do This\r\n\r\n* Using a wire, connect pin 2 to the positive (+) side of an LED\r\n* Using another wire, connect the negative (-) side of the LED to a ground (GND) pin (it doesn't matter which run)\r\n* Run this program to test your circuit. If it worked, your LED should turn on.\r\n\r\n_Debugging Tip: LEDs only work if the electricity is flowing from positive to negative. If your LED doesn't light up, make sure that it's oriented the right way._",
"contained_level_names": null
"contained_level_names": null,
"encrypted_examples": [

]
},
"published": true,
"notes": "",
"audit_log": "[{\"changed_at\":\"2018-01-05 20:35:24 +0000\",\"changed\":[\"notes\",\"code_functions\",\"contained_level_names\"],\"changed_by_id\":1,\"changed_by_email\":\"josh@code.org\"},{\"changed_at\":\"2018-01-05 20:51:32 +0000\",\"changed\":[\"code_functions\",\"start_blocks\",\"hide_view_data_button\"],\"changed_by_id\":1,\"changed_by_email\":\"josh@code.org\"},{\"changed_at\":\"2018-01-05 20:53:36 +0000\",\"changed\":[\"code_functions\",\"contained_level_names\"],\"changed_by_id\":1,\"changed_by_email\":\"josh@code.org\"}]",
"audit_log": "[{\"changed_at\":\"2018-01-05 20:35:24 +0000\",\"changed\":[\"notes\",\"code_functions\",\"contained_level_names\"],\"changed_by_id\":1,\"changed_by_email\":\"josh@code.org\"},{\"changed_at\":\"2018-01-05 20:51:32 +0000\",\"changed\":[\"code_functions\",\"start_blocks\",\"hide_view_data_button\"],\"changed_by_id\":1,\"changed_by_email\":\"josh@code.org\"},{\"changed_at\":\"2018-01-05 20:53:36 +0000\",\"changed\":[\"code_functions\",\"contained_level_names\"],\"changed_by_id\":1,\"changed_by_email\":\"josh@code.org\"},{\"changed_at\":\"2018-01-12 19:58:56 +0000\",\"changed\":[\"code_functions\",\"start_blocks\",\"contained_level_names\"],\"changed_by_id\":1,\"changed_by_email\":\"josh@code.org\"}]",
"level_concept_difficulty": {
}
}]]></config>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -66,10 +66,7 @@
"debugger_disabled": "false",
"makerlab_enabled": "true",
"markdown_instructions": "# Accelerated Music\r\n\r\nWe're going to make music with the board again, this time using the accelerometer. \r\n\r\nSince `buzzer.frequency` takes a number as a parameter, we can use the number that the accelerometer's pitch and roll properties return to change the frequency.\r\n\r\n# Do This\r\n* Make a variable to store either the accelerometer's pitch or roll, name it accordingly.\r\n* Use this variable with the buzzer, and alter it in some way. You can add or subtract from it, multiply it by another number, etc.\r\n* Run the program and alter it again to see what sort of sounds you get this time.",
"contained_level_names": null,
"encrypted_examples": [

]
"contained_level_names": null
},
"published": true,
"notes": "",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
},
"edit_code": true,
"embed": "false",
"markdown_instructions": "# Roll\r\n\r\nNow that you've made the LEDs turn on when you tilt the board forward and back, see if you can light up the 3rd and 7th LEDs when you tilt the board left and right. To do this, you're going to have to use `accelerometer.getOrientation('roll');` to detect side-to-side motion.\r\n\r\n_Remember_: When roll is a positive number, the board is tilting to the right. When roll is a negative number, the board is tilting to the left.\r\n\r\n# Do this\r\n* Create something similar to what you did in the last bubble, except now using `accelerometer.getOrientation(\"roll\")`\r\n* Run your code to see if it works. Make sure that you can both move the board back and forth, and side-to-side to turn the LEDs on.\r\n\r\n_Challenge_: The lights instantly turn on if you move the board in the slightest way. Can you make it so that you have to turn the board a little more in order for the lights to turn on?",
"markdown_instructions": "# Roll\r\n\r\nNow that you've made the LEDs turn on when you tilt the board forward and back, see if you can light LEDs 2 and 7 when you tilt the board left and right. You can use `accelerometer.getOrientation('roll')` to detect side-to-side motion.\r\n\r\n_Remember_: When roll is a positive number, the board is tilting to the right. When roll is a negative number, the board is tilting to the left.\r\n\r\n# Do this\r\n* Create something similar to what you did in the last bubble, except now using `accelerometer.getOrientation(\"roll\")`\r\n* Run your code to see if it works. Make sure that you can both move the board back and forth, and side-to-side to turn the LEDs on.\r\n\r\n_Challenge_: The lights instantly turn on if you move the board in the slightest way. Can you make it so that you have to turn the board a little more in order for the lights to turn on?",
"instructions_important": "false",
"submittable": "false",
"is_k1": "false",
Expand Down Expand Up @@ -57,11 +57,14 @@
"beginner_mode": "false",
"fail_on_lint_errors": "false",
"makerlab_enabled": "true",
"contained_level_names": null
"contained_level_names": null,
"encrypted_examples": [

]
},
"published": true,
"notes": "",
"audit_log": "[{\"changed_at\":\"2018-01-10 19:28:01 +0000\",\"changed\":[\"notes\",\"code_functions\",\"contained_level_names\"],\"changed_by_id\":568,\"changed_by_email\":\"meilani.eyre@code.org\"},{\"changed_at\":\"2018-01-10 19:55:04 +0000\",\"changed\":[\"code_functions\",\"markdown_instructions\",\"contained_level_names\"],\"changed_by_id\":568,\"changed_by_email\":\"meilani.eyre@code.org\"}]",
"audit_log": "[{\"changed_at\":\"2018-01-10 19:28:01 +0000\",\"changed\":[\"notes\",\"code_functions\",\"contained_level_names\"],\"changed_by_id\":568,\"changed_by_email\":\"meilani.eyre@code.org\"},{\"changed_at\":\"2018-01-10 19:55:04 +0000\",\"changed\":[\"code_functions\",\"markdown_instructions\",\"contained_level_names\"],\"changed_by_id\":568,\"changed_by_email\":\"meilani.eyre@code.org\"},{\"changed_at\":\"2018-01-12 17:58:58 +0000\",\"changed\":[\"code_functions\",\"markdown_instructions\",\"contained_level_names\"],\"changed_by_id\":568,\"changed_by_email\":\"meilani.eyre@code.org\"}]",
"level_concept_difficulty": {
}
}]]></config>
Expand Down