diff --git a/docs/courses/csintro.md b/docs/courses/csintro.md index a4d75050faa..9513d096b7f 100644 --- a/docs/courses/csintro.md +++ b/docs/courses/csintro.md @@ -1,57 +1,252 @@ -# Introduction to Computer Science with MakeCode Arcade +# Introduction to Computer Science +# with Microsoft MakeCode Arcade -Hello! Welcome to the new student guide for "Introduction to Computer Science with MakeCode Arcade"! +Hello! Welcome to the student guide for *Introduction to Computer Science with Microsoft MakeCode Arcade*! This page will provide you with additional activities that you can complete in order to better understand the lessons in the official curriculum. Please note, this page does not contain any answer keys or exemplar projects. -### ~hint +## Introduction -If you are looking for our previous "CS Intro" course, you may now find that at:" -https://arcade.makecode.com/courses/csintro-archive +New to tutorials in MakeCode? Then follow the *Intro to MakeCode Arcade* tutorial below! -### ~ +```codecard +[ + { + "name": "Intro to MakeCode Arcade", + "description": "Follow step-by-step instructions to learn the basics of using MakeCode Arcade tutorials!", + "url": "https://aka.ms/mc-intro", + "imageUrl": "/static/tutorials/interface/info.png", + "largeImageUrl": "/static/tutorials/interface/info.png", + "label": "New? Try This!", + "labelClass": "orange ribbon large" + } +] +``` + +## Skillmaps +Appropriate labs from each unit are aggregated below into skillmaps. -## Unit 0 Activities + ```codecard [ { - "name": "CS Intro 1", - "description": "A semester length computer science course for beginning coders", - "url":"/courses/csintro1", - "imageUrl": "/static/courses/csintro1.gif" - }, { - "name": "CS Intro 2", - "description": "A continuation of the Intro to CS course", - "url":"/courses/csintro2", - "imageUrl": "/static/courses/csintro2.gif" - }, { - "name": "CS Intro 3", - "description": "A quarter length transition from blocks to JavaScript", - "url": "/courses/csintro3", - "imageUrl": "/static/courses/csintro3.gif" + "name": "Unit 1", + "description": "Sprites", + "url": "/--skillmap#github:microsoft/pxt-arcade/docs/courses/csintro/blocks/unit1/skillmap", + "imageUrl": "https://arcade.makecode.com/api/S01708-98615-82961-41216/thumb" + }, { + "name": "Unit 2", + "description": "Event handlers and variables", + "url": "/--skillmap#github:microsoft/pxt-arcade/docs/courses/csintro/blocks/unit2/skillmap", + "imageUrl": "https://arcade.makecode.com/api/S01440-65616-58259-55413/thumb" + }, { + "name": "Unit 3", + "description": "Loops and arrays", + "url": "/--skillmap#github:microsoft/pxt-arcade/docs/courses/csintro/blocks/unit3/skillmap", + "imageUrl": "https://arcade.makecode.com/api/S24151-39662-06684-76747/thumb" } ] ``` -## Unit 1 Activities +## Tutorials +The individual activities presented in the skillmaps above are also provided as standalone tutorials below. + -## Unit 2 Activities - +#### Unit 0 Activities +```codecard +[ + { + "name": "Lab 0.6", + "description": "It's all about you!", + "url": "/#tutorial:/courses/csintro/blocks/unit-0/lab0006", + "imageUrl": "https://arcade.makecode.com/api/S02325-67229-86604-38896/thumb" + } +] +``` -## Unit 3 Activities +#### Unit 1 Activities +```codecard +[ + { + "name": "Lab 1.1 part 1", + "description": "Blocks scavenger hunt", + "url": "/#tutorial:/courses/csintro/blocks/unit-1/lab0101-part1", + "imageUrl": "https://arcade.makecode.com/api/S84007-40614-44053-34591/thumb" + }, { + "name": "Lab 1.1 part 2", + "description": "Renaming variables", + "url": "/#tutorial:/courses/csintro/blocks/unit-1/lab0101-part2", + "imageUrl": "/static/courses/csintro/S01.L01.01.P02.rename_variable.gif" + }, { + "name": "Lab 1.2", + "description": "Sprites in the corners", + "url": "/#tutorial:/courses/csintro/blocks/unit-1/lab0102", + "imageUrl": "https://arcade.makecode.com/api/S48579-29555-87617-56521/thumb" + }, { + "name": "Lab 1.3", + "description": "Moving sprites", + "url": "/#tutorial:/courses/csintro/blocks/unit-1/lab0103", + "imageUrl": "https://arcade.makecode.com/api/S96674-90076-64399-84406/thumb" + }, { + "name": "Lab 1.4 part 1", + "description": "Start wherever", + "url": "/#tutorial:/courses/csintro/blocks/unit-1/lab0104-part1", + "imageUrl": "https://arcade.makecode.com/api/S72191-59096-40476-83475/thumb" + }, { + "name": "Lab 1.4 part 2", + "description": "Eat it all", + "url": "/#tutorial:/courses/csintro/blocks/unit-1/lab0104-part2", + "imageUrl": "https://arcade.makecode.com/api/S72191-59096-40476-83475/thumb" + }, { + "name": "Lab 1.4 part 3", + "description": "Points and Lives", + "url": "/#tutorial:/courses/csintro/blocks/unit-1/lab0104-part3", + "imageUrl": "https://arcade.makecode.com/api/S72191-59096-40476-83475/thumb" + }, { + "name": "Lab 1.5", + "description": "Eat some more", + "url": "/#tutorial:/courses/csintro/blocks/unit-1/lab0105", + "imageUrl": "https://arcade.makecode.com/api/S01708-98615-82961-41216/thumb" + } +] +``` +#### Unit 2 Activities +```codecard +[ + { + "name": "Lab 2.1 part 1", + "description": "Fire away", + "url": "/#tutorial:/courses/csintro/blocks/unit-2/lab0201-part1", + "imageUrl": "https://arcade.makecode.com/api/S02046-71712-34811-01331/thumb" + }, { + "name": "Lab 2.1 part 2", + "description": "Here come the enemies", + "url": "/#tutorial:/courses/csintro/blocks/unit-2/lab0201-part2", + "imageUrl": "https://arcade.makecode.com/api/S02046-71712-34811-01331/thumb" + }, { + "name": "Lab 2.1 part 3", + "description": "Villains be gone", + "url": "/#tutorial:/courses/csintro/blocks/unit-2/lab0201-part3", + "imageUrl": "https://arcade.makecode.com/api/S02046-71712-34811-01331/thumb" + }, { + "name": "Lab 2.1 part 4", + "description": "Collision alert", + "url": "/#tutorial:/courses/csintro/blocks/unit-2/lab0201-part4", + "imageUrl": "https://arcade.makecode.com/api/S02046-71712-34811-01331/thumb" + }, { + "name": "Lab 2.1 part 5", + "description": "Bonus: Pew-pew", + "url": "/#tutorial:/courses/csintro/blocks/unit-2/lab0201-part5", + "imageUrl": "https://arcade.makecode.com/api/S02046-71712-34811-01331/thumb" + }, { + "name": "Lab 2.2 part 1", + "description": "Introduction to variables", + "url": "/#tutorial:/courses/csintro/blocks/unit-2/lab0202-part1", + "imageUrl": "https://arcade.makecode.com/api/S47184-28116-73351-38074/thumb" + }, { + "name": "Lab 2.2 part 2", + "description": "Count the items", + "url": "/#tutorial:/courses/csintro/blocks/unit-2/lab0202-part2", + "imageUrl": "https://arcade.makecode.com/api/S47184-28116-73351-38074/thumb" + }, { + "name": "Lab 2.3", + "description": "Variables and math", + "url": "/#tutorial:/courses/csintro/blocks/unit-2/lab0203", + "imageUrl": "https://arcade.makecode.com/api/S61412-68869-78966-85149/thumb" + }, { + "name": "Lab 2.4", + "description": "Silly story time", + "url": "/#tutorial:/courses/csintro/blocks/unit-2/lab0204", + "imageUrl": "https://arcade.makecode.com/api/S01440-65616-58259-55413/thumb" + }, { + "name": "Lab 2.5 part 1", + "description": "Pick a number", + "url": "/#tutorial:/courses/csintro/blocks/unit-2/lab0205-part1", + "imageUrl": "https://arcade.makecode.com/api/S67034-82374-71681-88847/thumb" + }, { + "name": "Lab 2.5 part 2", + "description": "Even or odd", + "url": "/#tutorial:/courses/csintro/blocks/unit-2/lab0205-part2", + "imageUrl": "https://arcade.makecode.com/api/S99104-69456-21835-87580/thumb" + }, { + "name": "Lab 2.5 part 3", + "description": "Magic four ball", + "url": "/#tutorial:/courses/csintro/blocks/unit-2/lab0205-part3", + "imageUrl": "https://arcade.makecode.com/api/S60868-62929-06905-31439/thumb" + }, { + "name": "Lab 2.6 part 1", + "description": "Only room for three", + "url": "/#tutorial:/courses/csintro/blocks/unit-2/lab0206-part1", + "imageUrl": "https://arcade.makecode.com/api/S75841-44862-62246-25929/thumb" + }, { + "name": "Lab 2.6 part 2", + "description": "Here come the enemies ... faster", + "url": "/#tutorial:/courses/csintro/blocks/unit-2/lab0206-part2", + "imageUrl": "https://arcade.makecode.com/api/S75841-44862-62246-25929/thumb" + }, { + "name": "Lab 2.6 part 3", + "description": "Not too fast", + "url": "/#tutorial:/courses/csintro/blocks/unit-2/lab0206-part3", + "imageUrl": "https://arcade.makecode.com/api/S75841-44862-62246-25929/thumb" + }, { + "name": "Lab 2.6 part 4", + "description": "Starting difficulty", + "url": "/#tutorial:/courses/csintro/blocks/unit-2/lab0206-part4", + "imageUrl": "https://arcade.makecode.com/api/S75841-44862-62246-25929/thumb" + } +] +``` +#### Unit 3 Activities +```codecard +[ + { + "name": "Lab 3.1 part 1", + "description": "The repeat loop", + "url": "/#tutorial:/courses/csintro/blocks/unit-3/lab0301-part1", + "imageUrl": "https://arcade.makecode.com/api/S58596-07767-54155-54916/thumb" + }, { + "name": "Lab 3.1 part 2", + "description": "The for loop", + "url": "/#tutorial:/courses/csintro/blocks/unit-3/lab0301-part2", + "imageUrl": "https://arcade.makecode.com/api/S04739-13054-75441-03012/thumb" + }, { + "name": "Lab 3.4", + "description": "High scores", + "url": "/--skillmap#github:microsoft/pxt-arcade/docs/courses/csintro/blocks/unit3/lab-3-4-skillmap", + "imageUrl": "https://arcade.makecode.com/api/S61379-50555-16499-36625/thumb" + }, { + "name": "Lab 3.5", + "description": "Animated sprites", + "url": "/--skillmap#github:microsoft/pxt-arcade/docs/courses/csintro/blocks/unit3/lab-3-5-skillmap", + "imageUrl": "https://arcade.makecode.com/api/S24151-39662-06684-76747/thumb" + } +] +``` ## See also [Courses Home Page](/courses), [Arcade Tutorials](/tutorials), [Beginner Skillmaps](/beginner-maps), + +### ~hint + +If you are looking for our previous "CS Intro" course, you may now find that at: +https://arcade.makecode.com/courses/csintro_archive + +### ~ + diff --git a/docs/courses/csintro/unit-0/s01-lab0006.md b/docs/courses/csintro/blocks/unit-0/lab0006.md similarity index 100% rename from docs/courses/csintro/unit-0/s01-lab0006.md rename to docs/courses/csintro/blocks/unit-0/lab0006.md diff --git a/docs/courses/csintro/unit-1/s01-lab0101-part1.md b/docs/courses/csintro/blocks/unit-1/lab0101-part1.md similarity index 100% rename from docs/courses/csintro/unit-1/s01-lab0101-part1.md rename to docs/courses/csintro/blocks/unit-1/lab0101-part1.md diff --git a/docs/courses/csintro/unit-1/s01-lab0101-part2.md b/docs/courses/csintro/blocks/unit-1/lab0101-part2.md similarity index 100% rename from docs/courses/csintro/unit-1/s01-lab0101-part2.md rename to docs/courses/csintro/blocks/unit-1/lab0101-part2.md diff --git a/docs/courses/csintro/unit-1/s01-lab0102.md b/docs/courses/csintro/blocks/unit-1/lab0102.md similarity index 96% rename from docs/courses/csintro/unit-1/s01-lab0102.md rename to docs/courses/csintro/blocks/unit-1/lab0102.md index 4dff723aef0..fe64404904e 100644 --- a/docs/courses/csintro/unit-1/s01-lab0102.md +++ b/docs/courses/csintro/blocks/unit-1/lab0102.md @@ -48,7 +48,7 @@ Use a ``||sprites:position to x (0) y (0)||`` block. -![An animation showing how to change a sprite kind.](https://alex-kulcsar.github.io/introcs-tutorials/assets/images/S01.L01.02.change_sprite_kind.gif) +![An animation showing how to change a sprite kind.](/static/courses/csintro/S01.L01.02.change_sprite_kind.gif) ```blocks let heroSprite: Sprite = sprites.create(img`1`, SpriteKind.Player) diff --git a/docs/courses/csintro/unit-1/s01-lab0103.md b/docs/courses/csintro/blocks/unit-1/lab0103.md similarity index 98% rename from docs/courses/csintro/unit-1/s01-lab0103.md rename to docs/courses/csintro/blocks/unit-1/lab0103.md index 771f4838cc3..a7db4e4f029 100644 --- a/docs/courses/csintro/unit-1/s01-lab0103.md +++ b/docs/courses/csintro/blocks/unit-1/lab0103.md @@ -201,7 +201,7 @@ game.showLongText("This is my story!", DialogLayout.Center) Can you make the food sprite move in a specific direction? -![A compass rose.](https://alex-kulcsar.github.io/introcs-tutorials/assets/images/S01.L01.03.compass_rose.png) +![A compass rose.](/static/courses/csintro/S01.L01.03.compass_rose.png) [This image](https://commons.wikimedia.org/wiki/File:Compass_rose_simple.svg) by Henrik is licensed under [CC BY-SA](https://creativecommons.org/licenses/by-sa/3.0/) **Questions** diff --git a/docs/courses/csintro/unit-1/s01-lab0104-part1.md b/docs/courses/csintro/blocks/unit-1/lab0104-part1.md similarity index 100% rename from docs/courses/csintro/unit-1/s01-lab0104-part1.md rename to docs/courses/csintro/blocks/unit-1/lab0104-part1.md diff --git a/docs/courses/csintro/unit-1/s01-lab0104-part2.md b/docs/courses/csintro/blocks/unit-1/lab0104-part2.md similarity index 97% rename from docs/courses/csintro/unit-1/s01-lab0104-part2.md rename to docs/courses/csintro/blocks/unit-1/lab0104-part2.md index 95498885ce0..1826ac9ba10 100644 --- a/docs/courses/csintro/unit-1/s01-lab0104-part2.md +++ b/docs/courses/csintro/blocks/unit-1/lab0104-part2.md @@ -116,7 +116,7 @@ Use the hint to see a screenshot of this and to check your code. Play your game in the simulator to see what happens when the enemy sprite collides with your hero! -![Using a local variable from a function header.](https://alex-kulcsar.github.io/introcs-tutorials/assets/images/S01.L01.04.P02.function_use_local_variable.png) +![Using a local variable from a function header.](/static/courses/csintro/S01.L01.04.P02.function_use_local_variable.png) ```block sprites.onOverlap(SpriteKind.Player, SpriteKind.Enemy, function (sprite, otherSprite) { diff --git a/docs/courses/csintro/unit-1/s01-lab0104-part3.md b/docs/courses/csintro/blocks/unit-1/lab0104-part3.md similarity index 100% rename from docs/courses/csintro/unit-1/s01-lab0104-part3.md rename to docs/courses/csintro/blocks/unit-1/lab0104-part3.md diff --git a/docs/courses/csintro/unit-1/s01-lab0105.md b/docs/courses/csintro/blocks/unit-1/lab0105.md similarity index 98% rename from docs/courses/csintro/unit-1/s01-lab0105.md rename to docs/courses/csintro/blocks/unit-1/lab0105.md index 6b45ec33de3..1c6b4f004af 100644 --- a/docs/courses/csintro/unit-1/s01-lab0105.md +++ b/docs/courses/csintro/blocks/unit-1/lab0105.md @@ -56,7 +56,7 @@ If we just made this new sprite a kind of food, then it will act like the other food in this game. hint~ -![Adding a new sprite kind.](https://alex-kulcsar.github.io/introcs-tutorials/assets/images/S01.L01.05.new_sprite_kind.gif) +![Adding a new sprite kind.](/static/courses/csintro/S01.L01.05.new_sprite_kind.gif) ## New life! diff --git a/docs/courses/csintro/blocks/unit-1/skillmap.md b/docs/courses/csintro/blocks/unit-1/skillmap.md new file mode 100644 index 00000000000..6314cd2cecd --- /dev/null +++ b/docs/courses/csintro/blocks/unit-1/skillmap.md @@ -0,0 +1,93 @@ +# blocks-unit-1 + +* name: Unit 1 Skillmap +* description: Learn about sprites, movement, and collisions in this skillmap. +* primarycolor: #2EA9B0 +* secondarycolor: #F392BD +* tertiarycolor: #83C252 +* highlightcolor: #FAED28 +* alternatesources: github:https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-1/skillmap.md + +## lab-01-01 + +* name: MakeCode Arcade scavenger hunt +* description: Learn more about MakeCode Arcade with a scavenger hunt! + +### lab-01-01-part-1 + +* name: Lab 1.1 Part 1 Blocks scavenger hunt +* description: Build a small project while learning about some useful blocks. +* type: tutorial +* next: lab-01-01-part-2 +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-1/lab0101-part1 + +### lab-01-01-part-2 + +* name: Lab 1.1 Part 2 Renaming variables +* description: Follow these steps to give your variables meaningful names. +* type: tutorial +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-1/lab0101-part2 + +## lab-01-02-and-03 + +* name: Sprites, sprites, and more sprites! +* description: Learn about sprites, movement, and sprite kinds on this path. + +### lab-01-02 + +* name: Lab 1.2 Sprites in the corners +* description: Learn to place sprites on the screen and work with different kinds of sprites. +* type: tutorial +* next: lab-01-03 +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-1/lab0102 + +### lab-01-03 + +* name: Lab 1.3 Moving sprites +* description: Use the controller to move the hero sprite around the screen! +* type: tutorial +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-1/lab0103 + +## lab-01-04-and-05 + +* name: Eat it all! and Eat some more! +* description: In these labs, we will write a game where the player must eat all the food +which appears--while avoiding an enemy which bounces around the screen! + +### lab-01-04-part1 + +* name: Lab 1.4 Part 1 A screen full of food +* description: Add food sprites to the screen at random locations +* type: tutorial +* next: lab-01-04-part2 +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-1/lab0104-part1.md + +### lab-01-04-part2 + +* name: Lab 1.4 Part 2 Eat it all! +* description: Add food sprites to the screen at random locations +* type: tutorial +* next: lab-01-04-part3 +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-1/lab0104-part2.md + +### lab-01-04-part3 + +* name: Lab 1.4 Part 3 Points! Lives! +* description: Add food sprites to the screen at random locations +* type: tutorial +* next: lab-01-04-finish +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-1/lab0104-part3.md + +### lab-01-04-finish + +* name: End of Lab 1.4. +* type: certificate +* kind: completion +* next: lab-01-05 + +### lab-01-05 + +* name: Lab 1.5 Eat some more! +* description: Add food sprites to the screen at random locations +* type: tutorial +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-1/lab0105.md diff --git a/docs/courses/csintro/unit-2/s01-lab0201-part1.md b/docs/courses/csintro/blocks/unit-2/lab0201-part1.md similarity index 100% rename from docs/courses/csintro/unit-2/s01-lab0201-part1.md rename to docs/courses/csintro/blocks/unit-2/lab0201-part1.md diff --git a/docs/courses/csintro/unit-2/s01-lab0201-part2.md b/docs/courses/csintro/blocks/unit-2/lab0201-part2.md similarity index 100% rename from docs/courses/csintro/unit-2/s01-lab0201-part2.md rename to docs/courses/csintro/blocks/unit-2/lab0201-part2.md diff --git a/docs/courses/csintro/unit-2/s01-lab0201-part3.md b/docs/courses/csintro/blocks/unit-2/lab0201-part3.md similarity index 100% rename from docs/courses/csintro/unit-2/s01-lab0201-part3.md rename to docs/courses/csintro/blocks/unit-2/lab0201-part3.md diff --git a/docs/courses/csintro/unit-2/s01-lab0201-part4.md b/docs/courses/csintro/blocks/unit-2/lab0201-part4.md similarity index 100% rename from docs/courses/csintro/unit-2/s01-lab0201-part4.md rename to docs/courses/csintro/blocks/unit-2/lab0201-part4.md diff --git a/docs/courses/csintro/unit-2/s01-lab0201-part5.md b/docs/courses/csintro/blocks/unit-2/lab0201-part5.md similarity index 100% rename from docs/courses/csintro/unit-2/s01-lab0201-part5.md rename to docs/courses/csintro/blocks/unit-2/lab0201-part5.md diff --git a/docs/courses/csintro/unit-2/s01-lab0202-part1.md b/docs/courses/csintro/blocks/unit-2/lab0202-part1.md similarity index 97% rename from docs/courses/csintro/unit-2/s01-lab0202-part1.md rename to docs/courses/csintro/blocks/unit-2/lab0202-part1.md index aec064a486c..197690af5ac 100644 --- a/docs/courses/csintro/unit-2/s01-lab0202-part1.md +++ b/docs/courses/csintro/blocks/unit-2/lab0202-part1.md @@ -50,7 +50,7 @@ block. Run your project to see how these blocks work together. Check the hint if you need help. -![Advanced drawers in the toolbox.](https://alex-kulcsar.github.io/introcs-tutorials/assets/images/S01.L02.02.P01.text_drawer.png) +![Advanced drawers in the toolbox.](/static/courses/csintro/S01.L02.02.P01.text_drawer.png) ```blocks game.splash("Hello" + "World") diff --git a/docs/courses/csintro/unit-2/s01-lab0202-part2.md b/docs/courses/csintro/blocks/unit-2/lab0202-part2.md similarity index 100% rename from docs/courses/csintro/unit-2/s01-lab0202-part2.md rename to docs/courses/csintro/blocks/unit-2/lab0202-part2.md diff --git a/docs/courses/csintro/unit-2/s01-lab0203.md b/docs/courses/csintro/blocks/unit-2/lab0203.md similarity index 100% rename from docs/courses/csintro/unit-2/s01-lab0203.md rename to docs/courses/csintro/blocks/unit-2/lab0203.md diff --git a/docs/courses/csintro/unit-2/s01-lab0204.md b/docs/courses/csintro/blocks/unit-2/lab0204.md similarity index 100% rename from docs/courses/csintro/unit-2/s01-lab0204.md rename to docs/courses/csintro/blocks/unit-2/lab0204.md diff --git a/docs/courses/csintro/unit-2/s01-lab0205-part1.md b/docs/courses/csintro/blocks/unit-2/lab0205-part1.md similarity index 100% rename from docs/courses/csintro/unit-2/s01-lab0205-part1.md rename to docs/courses/csintro/blocks/unit-2/lab0205-part1.md diff --git a/docs/courses/csintro/unit-2/s01-lab0205-part2.md b/docs/courses/csintro/blocks/unit-2/lab0205-part2.md similarity index 100% rename from docs/courses/csintro/unit-2/s01-lab0205-part2.md rename to docs/courses/csintro/blocks/unit-2/lab0205-part2.md diff --git a/docs/courses/csintro/unit-2/s01-lab0205-part3.md b/docs/courses/csintro/blocks/unit-2/lab0205-part3.md similarity index 100% rename from docs/courses/csintro/unit-2/s01-lab0205-part3.md rename to docs/courses/csintro/blocks/unit-2/lab0205-part3.md diff --git a/docs/courses/csintro/unit-2/s01-lab0206-part1.md b/docs/courses/csintro/blocks/unit-2/lab0206-part1.md similarity index 100% rename from docs/courses/csintro/unit-2/s01-lab0206-part1.md rename to docs/courses/csintro/blocks/unit-2/lab0206-part1.md diff --git a/docs/courses/csintro/unit-2/s01-lab0206-part2.md b/docs/courses/csintro/blocks/unit-2/lab0206-part2.md similarity index 100% rename from docs/courses/csintro/unit-2/s01-lab0206-part2.md rename to docs/courses/csintro/blocks/unit-2/lab0206-part2.md diff --git a/docs/courses/csintro/unit-2/s01-lab0206-part3.md b/docs/courses/csintro/blocks/unit-2/lab0206-part3.md similarity index 100% rename from docs/courses/csintro/unit-2/s01-lab0206-part3.md rename to docs/courses/csintro/blocks/unit-2/lab0206-part3.md diff --git a/docs/courses/csintro/unit-2/s01-lab0206-part4.md b/docs/courses/csintro/blocks/unit-2/lab0206-part4.md similarity index 100% rename from docs/courses/csintro/unit-2/s01-lab0206-part4.md rename to docs/courses/csintro/blocks/unit-2/lab0206-part4.md diff --git a/docs/courses/csintro/blocks/unit-2/skillmap.md b/docs/courses/csintro/blocks/unit-2/skillmap.md new file mode 100644 index 00000000000..d3047c4728c --- /dev/null +++ b/docs/courses/csintro/blocks/unit-2/skillmap.md @@ -0,0 +1,171 @@ +# blocks-unit-2 + +* name: Unit 2 Skillmap +* description: Learn about interactions between sprites and conditional statements. +* primarycolor: #2EA9B0 +* secondarycolor: #F392BD +* tertiarycolor: #83C252 +* highlightcolor: #FAED28 +* alternatesources: github:https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-2/skillmap.md + +## lab-02-01 + +* name: Shooting gallery +* description: Learn about event handlers and projectiles! + +### lab-02-01-part-1 + +* name: Lab 2.1 Part 1 Fire away! +* description: Create your hero sprite and fire projectiles. +* type: tutorial +* next: lab-02-01-part-2 +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-2/lab0201-part1 + +### lab-02-01-part-2 + +* name: Lab 2.1 Part 2 Here come the enemies! +* description: Add enemies to your project. +* type: tutorial +* next: lab-02-01-part-3 +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-2/lab0201-part2 + +### lab-02-01-part-3 + +* name: Lab 2.1 Part 3 Villains be gone! +* description: Destroy enemies when they are hit by a projectile. +* type: tutorial +* next: lab-02-01-part-4 +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-2/lab0201-part3 + +### lab-02-01-part-4 + +* name: Lab 2.1 Part 4 Collision alert! +* description: Lose a life when the player is struck by an enemy. +* type: tutorial +* next: lab-02-01-finish +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-2/lab0201-part4 + +### lab-02-01-finish + +* name: End of Lab 2.1. +* type: certificate +* kind: completion +* next: lab-02-01-part-5 + +### lab-02-01-part-5 + +* name: Lab 2.1 Part 5 BONUS -- Pew pew! +* description: Add some sound effects! +* type: tutorial +* next: lab-02-01-bonus-finish +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-2/lab0201-part5 + +### lab-02-01-bonus-finish + +* name: End of Lab 2.1. +* type: certificate +* kind: completion +* next: lab-02-06-part-1 + +### lab-02-06-part-1 + +* name: Lab 2.6 Part 1 There's only room for two of us! +* description: Update your project to limit the number of projectiles that are allowed. +* type: tutorial +* next: lab-02-06-part-2 +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-2/lab0206-part1 + +### lab-02-06-part-2 + +* name: Lab 2.6 Part 2 Here come the enemies ... faster! +* description: Update your project to speed up the enemies. +* type: tutorial +* next: lab-02-06-part-3 +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-2/lab0206-part2 + +### lab-02-06-part-3 + +* name: Lab 2.6 Part 3 Not too fast! +* description: Enforce a speed limit on your enemies. +* type: tutorial +* next: lab-02-06-part-4 +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-2/lab0206-part3 + +### lab-02-06-part-4 + +* name: Lab 2.6 Part 4 Starting difficulty +* description: Allow your player to select a difficlty! +* type: tutorial +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-2/lab0206-part4 + +## lab-02-02 + +* name: Introduction to variables +* description: Learn a few ways to use variables! + +### lab-02-02-part-1 + +* name: Lab 2.2 Part 1 How old are you? +* description: Use variables to ask the player about their age. Learn to use the on-screen keyboard, too! +* type: tutorial +* next: lab-02-02-part-2 +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-2/lab0202-part1 + +### lab-02-02-part-2 + +* name: Lab 2.2 Part 2 How many items? +* description: Use a variable to keep track of the number of sprites on the screen. +* type: tutorial +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-2/lab0202-part2 + +## lab-02-03 + +* name: Lab 2.3 Variables and math +* description: Combine variables with math operations + +### lab-02-03-lab + +* name: Lab 2.3 Variables and math +* description: Combine variables with math operations +* type: tutorial +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-2/lab0203 + +## lab-02-04 + +* name: Lab 2.4 Silly story time! +* description: Use strings, splashes, and story telling techniques to tell a silly story! + +### lab-02-04-lab + +* name: Lab 2.4 Silly story time! +* description: Use strings, splashes, and story telling techniques to tell a silly story! +* type: tutorial +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-2/lab0204 + +## lab-02-05 + +* name: Guess what! +* description: Learn about conditional statements and decision structures. + +### lab-02-05-part-1 + +* name: Lab 2.5 Part 1 Pick a number! +* description: Create a number-guessing game show! +* type: tutorial +* next: lab-02-05-part-2 +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-2/lab0205-part1 + +### lab-02-05-part-2 + +* name: Lab 2.5 Part 2 Is it even? +* description: Use a conditional statement to test whether a number is even. +* type: tutorial +* next: lab-02-05-part-3 +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-2/lab0205-part2 + +### lab-02-05-part-3 + +* name: Lab 2.5 Part 3 Magic four ball! +* description: Use conditional statements to create a fortune telling device! +* type: tutorial +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-2/lab0205-part3 diff --git a/docs/courses/csintro/blocks/unit-3/lab-3-4-skillmap.md b/docs/courses/csintro/blocks/unit-3/lab-3-4-skillmap.md new file mode 100644 index 00000000000..3190d326388 --- /dev/null +++ b/docs/courses/csintro/blocks/unit-3/lab-3-4-skillmap.md @@ -0,0 +1,37 @@ +# blocks-lesson-3-4 + +* name: Lesson 3.4 Skillmap +* description: Use arrays to create a high scores table. +* primarycolor: #2EA9B0 +* secondarycolor: #F392BD +* tertiarycolor: #83C252 +* highlightcolor: #FAED28 +* alternatesources: github:https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-3/lab-3-4-skillmap.md + +## lab-03-04 + +* name: High scores +* description: Learn to use arrays to build a high scores table! + +### lab-03-04-part-1 + +* name: Lab 3.4 Part 1 High scores! +* description: Build an empty high scores table and display it at the end of the game. +* type: tutorial +* next: lab-03-04-part-2 +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-3/lab0304-part1 + +### lab-03-04-part-2 + +* name: Lab 3.4 Part 2 My high score! +* description: Add the player's entry to the high score table. +* type: tutorial +* next: lab-03-04-part-3 +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-3/lab0304-part2 + +### lab-03-04-part-3 + +* name: Lab 3.4 Part 3 Don't lose it! +* description: Use the Better Settings extension to save your high scores table. +* type: tutorial +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-3/lab0304-part3 diff --git a/docs/courses/csintro/blocks/unit-3/lab-3-5-skillmap.md b/docs/courses/csintro/blocks/unit-3/lab-3-5-skillmap.md new file mode 100644 index 00000000000..5178abf6701 --- /dev/null +++ b/docs/courses/csintro/blocks/unit-3/lab-3-5-skillmap.md @@ -0,0 +1,37 @@ +# blocks-lesson-3-5 + +* name: Lesson 3.5 Skillmap +* description: Learn different ways to animate sprites. +* primarycolor: #2EA9B0 +* secondarycolor: #F392BD +* tertiarycolor: #83C252 +* highlightcolor: #FAED28 +* alternatesources: github:https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-3/lab-3-5-skillmap.md + +## lab-03-05 + +* name: Animated sprites +* description: Learn about frame-based animation to animate your sprites! + +### lab-03-05-part-1 + +* name: Lab 3.5 Part 1 Starting difficulty +* description: Use an array of images to manually animate a sprite. +* type: tutorial +* next: lab-03-05-part-2 +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-3/lab0305-part1 + +### lab-03-05-part-2 + +* name: Lab 3.5 Part 2 Built-in animations! +* description: Use the built-in animation block to animate a sprite. +* type: tutorial +* next: lab-03-05-part-3 +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-3/lab0305-part2 + +### lab-03-05-part-3 + +* name: Lab 3.5 Part 3 What a great character! +* description: Use the Character extension to give sprites complex animations. +* type: tutorial +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-3/lab0305-part3 diff --git a/docs/courses/csintro/unit-3/s01-lab0301-part1.md b/docs/courses/csintro/blocks/unit-3/lab0301-part1.md similarity index 100% rename from docs/courses/csintro/unit-3/s01-lab0301-part1.md rename to docs/courses/csintro/blocks/unit-3/lab0301-part1.md diff --git a/docs/courses/csintro/unit-3/s01-lab0301-part2.md b/docs/courses/csintro/blocks/unit-3/lab0301-part2.md similarity index 97% rename from docs/courses/csintro/unit-3/s01-lab0301-part2.md rename to docs/courses/csintro/blocks/unit-3/lab0301-part2.md index deae28770bd..004fb515ace 100644 --- a/docs/courses/csintro/unit-3/s01-lab0301-part2.md +++ b/docs/courses/csintro/blocks/unit-3/lab0301-part2.md @@ -135,7 +135,7 @@ If you don't like the name of the loop control variable, you can drop one of your own in its place. Give it a try! - Let's say you want to draw a grid of sprites on the screen, like the image below: -![Ducks in a grid.](https://alex-kulcsar.github.io/introcs-tutorials/assets/images/S01.L03.01.P02.duck_grid.png) +![Ducks in a grid.](/static/courses/csintro/S01.L03.01.P02.duck_grid.png) How might you do that? - Create an interesting pattern of sprites. Challenge your "helping trios" teammates to duplicate your pattern using loops. diff --git a/docs/courses/csintro/unit-3/s01-lab0304-part1.md b/docs/courses/csintro/blocks/unit-3/lab0304-part1.md similarity index 98% rename from docs/courses/csintro/unit-3/s01-lab0304-part1.md rename to docs/courses/csintro/blocks/unit-3/lab0304-part1.md index 78bf04bcdea..175178a9f9f 100644 --- a/docs/courses/csintro/unit-3/s01-lab0304-part1.md +++ b/docs/courses/csintro/blocks/unit-3/lab0304-part1.md @@ -75,12 +75,12 @@ to make the game end, because it will not end on its own now! Before we end the game, let's display the high scores table. -1. Create a new variable called **high scores text**. +1. Create a new variable called **high scores message**. 1. In your ``||info(noclick):on life zero||`` container, set the value of -**high scores text** to the string +**high scores message** to the string **High scores\n**. - Those special characters at the end ask MakeCode to put the characters on their own line. @@ -105,7 +105,7 @@ for an array is one less than its size. 1. In the ``||loops(noclick):for||`` loop, build your high score message. Set the -**high scores text** variable to join the following strings: +**high scores message** variable to join the following strings: 1. ``||variables:high scores text||`` (In other words, you are adding to the existing value.) 1. ``||variables(arrays):high score names||`` diff --git a/docs/courses/csintro/unit-3/s01-lab0304-part2.md b/docs/courses/csintro/blocks/unit-3/lab0304-part2.md similarity index 100% rename from docs/courses/csintro/unit-3/s01-lab0304-part2.md rename to docs/courses/csintro/blocks/unit-3/lab0304-part2.md diff --git a/docs/courses/csintro/unit-3/s01-lab0304-part3.md b/docs/courses/csintro/blocks/unit-3/lab0304-part3.md similarity index 100% rename from docs/courses/csintro/unit-3/s01-lab0304-part3.md rename to docs/courses/csintro/blocks/unit-3/lab0304-part3.md diff --git a/docs/courses/csintro/unit-3/s01-lab0305-part1.md b/docs/courses/csintro/blocks/unit-3/lab0305-part1.md similarity index 99% rename from docs/courses/csintro/unit-3/s01-lab0305-part1.md rename to docs/courses/csintro/blocks/unit-3/lab0305-part1.md index fa8621c9b89..a8001b17cc4 100644 --- a/docs/courses/csintro/unit-3/s01-lab0305-part1.md +++ b/docs/courses/csintro/blocks/unit-3/lab0305-part1.md @@ -9,7 +9,7 @@ flip through the pages quickly, then it looks like the image is moving! This is the style of animation that MakeCode Arcade uses. It is called *frame-based animation*. -![An example of a flipbook.](https://alex-kulcsar.github.io/introcs-tutorials/assets/images/S01.L03.05.P01.flipbook.jpg) +![An example of a flipbook.](/static/courses/csintro/S01.L03.05.P01.flipbook.jpg) Image credit: John Barnes Linnett. Public domain. ## I like to do things the hard way! diff --git a/docs/courses/csintro/unit-3/s01-lab0305-part2.md b/docs/courses/csintro/blocks/unit-3/lab0305-part2.md similarity index 100% rename from docs/courses/csintro/unit-3/s01-lab0305-part2.md rename to docs/courses/csintro/blocks/unit-3/lab0305-part2.md diff --git a/docs/courses/csintro/unit-3/s01-lab0305-part3.md b/docs/courses/csintro/blocks/unit-3/lab0305-part3.md similarity index 100% rename from docs/courses/csintro/unit-3/s01-lab0305-part3.md rename to docs/courses/csintro/blocks/unit-3/lab0305-part3.md diff --git a/docs/courses/csintro/blocks/unit-3/skillmap.md b/docs/courses/csintro/blocks/unit-3/skillmap.md new file mode 100644 index 00000000000..6959558c15b --- /dev/null +++ b/docs/courses/csintro/blocks/unit-3/skillmap.md @@ -0,0 +1,85 @@ +# blocks-unit-3 + +* name: Unit 3 Skillmap +* description: Learn about loops, arrays, and animations! +* primarycolor: #2EA9B0 +* secondarycolor: #F392BD +* tertiarycolor: #83C252 +* highlightcolor: #FAED28 +* alternatesources: github:https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-3/skillmap.md + +## lab-03-01 + +* name: Definite loops +* description: Learn about the two definite loops in MakeCode: The repeat loop and the for loop. + +### lab-03-01-part-1 + +* name: Lab 3.1 Part 1 Repeat that, please! +* description: Use the repeat loop to launch projectiles from a sprite. +* type: tutorial +* next: lab-03-01-part-2 +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-3/lab0301-part1 + +### lab-03-01-part-2 + +* name: Lab 3.1 Part 2 For! +* description: Use the for loop to arrange sprites in a pattern. +* type: tutorial +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-3/lab0301-part2 + +## lab-03-04 + +* name: High scores +* description: Learn to use arrays to build a high scores table! + +### lab-03-04-part-1 + +* name: Lab 3.4 Part 1 High scores! +* description: Build an empty high scores table and display it at the end of the game. +* type: tutorial +* next: lab-03-04-part-2 +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-3/lab0304-part1 + +### lab-03-04-part-2 + +* name: Lab 3.4 Part 2 My high score! +* description: Add the player's entry to the high score table. +* type: tutorial +* next: lab-03-04-part-3 +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-3/lab0304-part2 + +### lab-03-04-part-3 + +* name: Lab 3.4 Part 3 Don't lose it! +* description: Use the Better Settings extension to save your high scores table. +* type: tutorial +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-3/lab0304-part3 + +## lab-03-05 + +* name: Animated sprites +* description: Learn about frame-based animation to animate your sprites! + +### lab-03-05-part-1 + +* name: Lab 3.5 Part 1 Starting difficulty +* description: Use an array of images to manually animate a sprite. +* type: tutorial +* next: lab-03-05-part-2 +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-3/lab0305-part1 + +### lab-03-05-part-2 + +* name: Lab 3.5 Part 2 Built-in animations! +* description: Use the built-in animation block to animate a sprite. +* type: tutorial +* next: lab-03-05-part-3 +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-3/lab0305-part2 + +### lab-03-05-part-3 + +* name: Lab 3.5 Part 3 What a great character! +* description: Use the Character extension to give sprites complex animations. +* type: tutorial +* url: https://github.com/microsoft/pxt-arcade/docs/courses/csintro/blocks/unit-3/lab0305-part3 diff --git a/docs/static/courses/csintro/S01.L01.01.P02.rename_variable.gif b/docs/static/courses/csintro/S01.L01.01.P02.rename_variable.gif new file mode 100644 index 00000000000..07b4b402010 Binary files /dev/null and b/docs/static/courses/csintro/S01.L01.01.P02.rename_variable.gif differ diff --git a/docs/static/courses/csintro/S01.L01.02.change_sprite_kind.gif b/docs/static/courses/csintro/S01.L01.02.change_sprite_kind.gif new file mode 100644 index 00000000000..bf25d37ea21 Binary files /dev/null and b/docs/static/courses/csintro/S01.L01.02.change_sprite_kind.gif differ diff --git a/docs/static/courses/csintro/S01.L01.03.compass_rose.png b/docs/static/courses/csintro/S01.L01.03.compass_rose.png new file mode 100644 index 00000000000..0e5bf784e7c Binary files /dev/null and b/docs/static/courses/csintro/S01.L01.03.compass_rose.png differ diff --git a/docs/static/courses/csintro/S01.L01.04.P02.function_use_local_variable.png b/docs/static/courses/csintro/S01.L01.04.P02.function_use_local_variable.png new file mode 100644 index 00000000000..1b61ce6ba23 Binary files /dev/null and b/docs/static/courses/csintro/S01.L01.04.P02.function_use_local_variable.png differ diff --git a/docs/static/courses/csintro/S01.L01.05.new_sprite_kind.gif b/docs/static/courses/csintro/S01.L01.05.new_sprite_kind.gif new file mode 100644 index 00000000000..aa8b7ff35a7 Binary files /dev/null and b/docs/static/courses/csintro/S01.L01.05.new_sprite_kind.gif differ diff --git a/docs/static/courses/csintro/S01.L02.02.P01.text_drawer.png b/docs/static/courses/csintro/S01.L02.02.P01.text_drawer.png new file mode 100644 index 00000000000..752331fffcf Binary files /dev/null and b/docs/static/courses/csintro/S01.L02.02.P01.text_drawer.png differ diff --git a/docs/static/courses/csintro/S01.L03.01.P02.duck_grid.png b/docs/static/courses/csintro/S01.L03.01.P02.duck_grid.png new file mode 100644 index 00000000000..cdbfffa0ffa Binary files /dev/null and b/docs/static/courses/csintro/S01.L03.01.P02.duck_grid.png differ diff --git a/docs/static/courses/csintro/S01.L03.05.P01.flipbook.jpg b/docs/static/courses/csintro/S01.L03.05.P01.flipbook.jpg new file mode 100644 index 00000000000..bb7a3b902f9 Binary files /dev/null and b/docs/static/courses/csintro/S01.L03.05.P01.flipbook.jpg differ