From 4fbc3b0cf6a3eb793de6c1c2cec4db46a57a01b0 Mon Sep 17 00:00:00 2001 From: Kiki Prottsman Date: Mon, 22 Jul 2024 10:48:52 -0700 Subject: [PATCH] Creating new version of Dunk (#6464) (#6466) --- docs/courses.md | 11 +- docs/static/tutorials/hawk/game.png | Bin 0 -> 25228 bytes docs/test/tutorials/dunk.md | 732 ++++++++++++++++------------ 3 files changed, 417 insertions(+), 326 deletions(-) create mode 100644 docs/static/tutorials/hawk/game.png diff --git a/docs/courses.md b/docs/courses.md index ec46912b3e2..17d49775f28 100644 --- a/docs/courses.md +++ b/docs/courses.md @@ -33,11 +33,18 @@ Structured courses for teaching computer science in the classroom. "url": "/courses/carnival", "imageUrl": "/static/hour-of-code/2022/booth.png", "largeImageUrl": "/static/hour-of-code/2022/booth.png", - "directOpen": true + "directOpen": true, + "label": "No Verification Required!", + "labelClass": "orange ribbon large" } ] ``` +Interested in using AP Computer Science Principles or Introduction to Computer Science with Microsoft MakeCode Arcade? You'll need to create an Educator Verified GitHub account to download them. Details on that process can be found here: + +[https://makecode.com/github-teacher-verification](https://makecode.com/github-teacher-verification) + + ## TinkerGen GameGo-Game Programming Courses A collection of game programming tutorials to develop kids’ graphical programming skills with TinkerGen's GameGo. @@ -67,6 +74,8 @@ The games they make in the course can run on the GameGo device! Courses are free ## See also + + [Code a Carnival](aka.ms/carnivalTeacher) [AP Computer Science Principles](https://makecode.com/csp) [GameGo Beginner](https://make2learn.tinkergen.com/course/?sku=604182001), diff --git a/docs/static/tutorials/hawk/game.png b/docs/static/tutorials/hawk/game.png new file mode 100644 index 0000000000000000000000000000000000000000..93c584f98e7b1e6373ff10e077d60e783ca432b8 GIT binary patch literal 25228 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 Rc~}4d002ovPDHLkV1mIzpIZO` literal 0 HcmV?d00001 diff --git a/docs/test/tutorials/dunk.md b/docs/test/tutorials/dunk.md index 1aa8321155a..324927e789b 100644 --- a/docs/test/tutorials/dunk.md +++ b/docs/test/tutorials/dunk.md @@ -8,7 +8,6 @@ Ready to test your agility? Let's create a game where your player speeds through the cones to get to the hoop. -![Blaise Tutorial Video](youtube:e4OVA6Xpl18) @@ -25,66 +24,26 @@ to the game!**
- :paper plane: From the ``||sprites: Sprites||`` category **in the toolbox**, grab ```block -let player = sprites.create(img`.`, SpriteKind.Player) +let player = sprites.create(dunk_imgs.dribble_stand, SpriteKind.Player) ``` and snap it inside the empty
``||loops(noclick): on start||``
block already in the workspace. -~hint See the Video 📺 -![Blaise Tutorial Video](youtube:e4OVA6Xpl18?start=37) - -hint~ #### ~ tutorialhint ```blocks //@highlight -let player = sprites.create(img`.`, SpriteKind.Player) -``` - -## {Step 3} - -- :paint brush: Click the grey box inside -```block -let player = sprites.create(img`.`, SpriteKind.Player) +let player = sprites.create(dunk_imgs.dribble_stand, SpriteKind.Player) ``` -to open the -image editor and then click the
-gallery tab. - - - -![My Assets](/static/skillmap/assets/gallery.png "Toggle to see the images for this game" ) - - - -- :mouse pointer: Choose **one of the available sprites, or make your own** and click **Done**. -~hint See the Video 📺 - -![Blaise Tutorial Video](youtube:e4OVA6Xpl18?start=90) - -hint~ - - -#### ~ tutorialhint - -```blocks -//@highlight -let player = sprites.create(assets.image`HarrytheHawk`, SpriteKind.Player) -``` - - - - - -## {Step 4} +## {Step 3} **Look at the game window.** @@ -93,11 +52,11 @@ let player = sprites.create(assets.image`HarrytheHawk`, SpriteKind.Player) You should see your player in the middle of the screen. -![Look at the game window](/static/skillmap/mole/game1.png " ") +![Look at the game window](/static/tutorials/hawk/game.png) -## {Step 5} +## {Step 4} **Your player needs to be able to move up and down on the screen.** @@ -111,33 +70,28 @@ and snap it in at **the end** of the
block already in the workspace. -~hint See the Video 📺 - -![Blaise Tutorial Video](youtube:e4OVA6Xpl18?start=190) - -hint~ - #### ~ tutorialhint ```blocks -let player = sprites.create(assets.image`HarrytheHawk`, SpriteKind.Player) +let player = sprites.create(dunk_imgs.dribble_stand, SpriteKind.Player) //@highlight controller.moveOnlyOnscreenWithArrows(player, controller.Speeds.Fast) ``` -## {Step 6} +## {Step 5} + -**🎮 Try your project using the game screen** +- :binoculars: Try your project using the game window. Make sure your player moves up and down with the **joypad** or **arrow keys**. -## {Step 7} +## {Step 6} **Let's set the scene**
⛹🏽 ⛹🏽 ⛹🏽 @@ -146,22 +100,15 @@ Make sure your player moves up and down with the **joypad** or - :tree: From ``||scene:Scene||``, grab ```block -scene.setBackgroundImage(img`.`) +scene.setBackgroundImage(dunk_imgs.court_w_people) ``` and snap it in at **the end** of the
``||loops(noclick):on start||``
container already in the workspace. -- :paint brush: Click the **grey square** and switch to My Assets to choose the **BB Court w Audience** background -![Choose the court from My Assets gallery](/static/tutorials/hawk/court.png " " ) - - -~hint See the Video 📺 +- :paint brush: You can click the image of the basketball court and make edits if you like. -![Blaise Tutorial Video](youtube:e4OVA6Xpl18?start=268) - -hint~ @@ -169,14 +116,14 @@ hint~ #### ~ tutorialhint ```blocks -let player = sprites.create(assets.image`HarrytheHawk`, SpriteKind.Player) +let player = sprites.create(dunk_imgs.dribble_stand, SpriteKind.Player) controller.moveOnlyOnscreenWithArrows(player, controller.Speeds.Fast) //@highlight -scene.setBackgroundImage(assets.image`BB Court w Audience`) +scene.setBackgroundImage(dunk_imgs.court_w_people) ``` -## {Step 8} +## {Step 7} **Add movement to the scene** @@ -191,28 +138,22 @@ into **the end** of the
container already in the workspace. -~hint See the Video 📺 - -![Blaise Tutorial Video](youtube:e4OVA6Xpl18?start=369) - -hint~ - #### ~ tutorialhint ```blocks -let player = sprites.create(assets.image`HarrytheHawk`, SpriteKind.Player) +let player = sprites.create(dunk_imgs.dribble_stand, SpriteKind.Player) controller.moveOnlyOnscreenWithArrows(harry, controller.Speeds.Fast) -scene.setBackgroundImage(assets.image`BB Court w Audience`) +scene.setBackgroundImage(dunk_imgs.court_w_people) //@highlight scroller.scrollBackgroundWithSpeed(-90, 0) ``` -## {Step 9} +## {Step 8} -**Take a look at the game screen** +**Take a look at the game window** 🎮 🎮 🎮 Your background should move right-to-left across the screen @@ -221,7 +162,7 @@ and you should be able to move your player up and down with the joypad or arrow -## {Step 10} +## {Step 9} Let's add some cones to dodge! @@ -232,7 +173,7 @@ Let's add some cones to dodge! ```block forever(function () { while (info.countdown() > 0) { - let cone = sprites.createProjectileFromSide(assets.image`Pylon`, -90, 0) + let cone = sprites.createProjectileFromSide(dunk_imgs.pylon, -90, 0) cone.y = randint(25, 115) pause(randint(50, 100)) } @@ -241,19 +182,7 @@ forever(function () { bundle and drop it into an empty area of the workspace. This will spawn random cones on the court until the timer is up. -- :paint brush: Click the empty grey box in the
-``||sprites:set [cone] to projectile [ ] from side||``
-block and switch to the gallery to select the orange cone. - -![Choose the cone from My Assets gallery](/static/tutorials/hawk/cone.png " " ) - - - -~hint See the Video 📺 -![Blaise Tutorial Video](youtube:e4OVA6Xpl18?start=428) - -hint~ @@ -262,7 +191,7 @@ hint~ ```blocks forever(function () { while (info.countdown() > 0) { - let cone = sprites.createProjectileFromSide(assets.image`Pylon`, -90, 0) + let cone = sprites.createProjectileFromSide(dunk_imgs.pylon, -90, 0) cone.y = randint(25, 115) pause(randint(50, 100)) } @@ -271,7 +200,7 @@ forever(function () { -## {Step 11} +## {Step 10} **The cones won't show up until the countdown clock starts. ** @@ -286,25 +215,19 @@ and snap it in **at the end** of the ``||loops(noclick):on start||`` container that's already in the workspace. -~hint See the Video 📺 - -![Blaise Tutorial Video](youtube:e4OVA6Xpl18?start=537) - -hint~ - #### ~ tutorialhint ```blocks -let player = sprites.create(assets.image`HarrytheHawk`, SpriteKind.Player) +let player = sprites.create(dunk_imgs.dribble_stand, SpriteKind.Player) controller.moveOnlyOnscreenWithArrows(player, controller.Speeds.Fast) -scene.setBackgroundImage(assets.image`BB Court w Audience`) +scene.setBackgroundImage(dunk_imgs.court_w_people) scroller.scrollBackgroundWithSpeed(-90, 0) //@highlight info.startCountdown(30) ``` -## {Step 12} +## {Step 11} **WOW! That's TOO MANY CONES!** @@ -319,11 +242,6 @@ Let's increase the pause to create some space. We recommend 500 and 1000, but you can adjust for difficulty! -~hint See the Video 📺 - -![Blaise Tutorial Video](youtube:e4OVA6Xpl18?start=560) - -hint~ #### ~ tutorialhint @@ -331,7 +249,7 @@ hint~ ```blocks forever(function () { while (info.countdown() > 0) { - let cone = sprites.createProjectileFromSide(assets.image`Pylon`, -90, 0) + let cone = sprites.createProjectileFromSide(dunk_imgs.pylon, -90, 0) cone.y = randint(25, 115) //@highlight pause(randint(500, 1000)) @@ -342,16 +260,16 @@ forever(function () { -## {Step 13} +## {Step 12} -**🎮 Now try your game on the game screen 🎮** +**🎮 Now try your game in the game window 🎮** How is it working? -## {Step 14} +## {Step 13} The cones look great, but nothing happens when your player runs into them. @@ -370,11 +288,6 @@ bundle and drag it into an **empty area** of the workspace. This is the code that takes away a life when your player runs into a cone. -~hint See the Video 📺 - -![Blaise Tutorial Video](youtube:e4OVA6Xpl18?start=648) - -hint~ @@ -402,9 +315,9 @@ sprites.onOverlap(SpriteKind.Player, SpriteKind.Projectile, function (sprite, ot -## {Step 15} +## {Step 14} -**🎮 Take a look at the game screen 🎮** +**🎮 Take a look at the game window 🎮** You should be able to play your game! @@ -414,7 +327,7 @@ Can you **avoid the cones** for **30 seconds**? -## {Step 16} +## {Step 15} **Let's animate your player!** @@ -433,20 +346,14 @@ into **the bottom** of the ``||loops(noclick):on start||`` container. -~hint See the Video 📺 - -![Blaise Tutorial Video](youtube:e4OVA6Xpl18?start=704) - -hint~ - #### ~ tutorialhint ```blocks -let player = sprites.create(assets.image`HarrytheHawk`, SpriteKind.Player) +let player = sprites.create(dunk_imgs.dribble_stand, SpriteKind.Player) controller.moveOnlyOnscreenWithArrows(player, controller.Speeds.Fast) -scene.setBackgroundImage(assets.image`BB Court w Audience`) +scene.setBackgroundImage(dunk_imgs.court_w_people) scroller.scrollBackgroundWithSpeed(-90, 0) info.startCountdown(30) //@highlight @@ -454,7 +361,7 @@ animation.runImageAnimation(player, [img`.`], 100, true) ``` -## {Step 17} +## {Step 16} **🎥 Let's get animating 🎥** @@ -462,19 +369,13 @@ animation.runImageAnimation(player, [img`.`], 100, true) - :paint brush: To select an animation, click the empty grey box in ```block -animation.runImageAnimation(player, [img`.`], 100, true) +animation.runImageAnimation(player, dunk_imgs.dribble, 100, true) ``` and switch to the gallery tab. -- :mouse pointer: Choose the **dribbling** animation and select **Done**. - +- :mouse pointer: Choose the **dribble** animation and select **Done**. -~hint See the Video 📺 - -![Blaise Tutorial Video](youtube:e4OVA6Xpl18?start=781) - -hint~ @@ -484,16 +385,41 @@ hint~ ```blocks let player = sprites.create(assets.image`Harry the Hawk`, SpriteKind.Player) controller.moveOnlyOnscreenWithArrows(player, controller.Speeds.Fast) -scene.setBackgroundImage(assets.image`BB Court w Audience`) +scene.setBackgroundImage(dunk_imgs.court_w_people) scroller.scrollBackgroundWithSpeed(-90, 0) info.startCountdown(30) //@highlight -animation.runImageAnimation(player, [img`.`], 100, true) +animation.runImageAnimation(player, [img` +...........ffffff....... +.........fffffffff...... +.........ffffffcfff..... +........ffffcfffcfff.... +........fcffccfffccff... +........fccffffefffff... +........fffffffeefff.... +........ffeefbfeefff.... +........ffe4e1f44ff..... +.........fe4e4444f...... +.........f4444444f...... +........cffffffff....... +.......cfffffffffc...... +.......cffb44fffffc..... +.......cffb44fffffc..... +.......cfffb4411cf4ccc.. +.......cffffc111cf411c.. +.......dfffffcccffb1fff. +........dffffffffccf4f4f +.......c22222222bc.fffff +.......c2222222bc..f4f4f +.......c2222bbb2c...fff. +......c2222bcb22c....... +......cfffffccfffc...... +`], 100, true) ``` -## {Step 18} +## {Step 17} **🎮 Time for some tricks! 🎮** @@ -506,14 +432,14 @@ let player: Sprite = null controller.A.onEvent(ControllerButtonEvent.Pressed, function () { animation.runImageAnimation( player, -[img`.`,img`.`], +dunk_imgs.spin, 75, false ) pause(850) animation.runImageAnimation( player, -[img`.`,img`.`], +dunk_imgs.dribble, 75, true ) @@ -523,11 +449,6 @@ controller.A.onEvent(ControllerButtonEvent.Pressed, function () { bundle and drag it into an **empty area** of the workspace. -~hint See the Video 📺 - -![Blaise Tutorial Video](youtube:e4OVA6Xpl18?start=792) - -hint~ @@ -539,21 +460,42 @@ let player: Sprite = null controller.A.onEvent(ControllerButtonEvent.Pressed, function () { animation.runImageAnimation( player, -[img`.`,img`.`], +dunk_imgs.spin, 75, false ) pause(850) animation.runImageAnimation( player, -[img`.`,img`.`], +dunk_imgs.dribble, 75, true ) }) ``` -## {Step 19} +```blockconfig.local +controller.A.onEvent(ControllerButtonEvent.Pressed, function () { + animation.runImageAnimation( + player, +dunk_imgs.spin, + 75, + false + ) + pause(850) + animation.runImageAnimation( + player, +dunk_imgs.dribble, + 75, + true + ) +}) +``` + + + + +## {Step 18} **🎥 Now for the visuals! 🎥** @@ -567,14 +509,14 @@ controller.A.onEvent(ControllerButtonEvent.Pressed, function () { //@highlight animation.runImageAnimation( player, -[img`.`,img`.`], +dunk_imgs.spin, 75, false ) pause(850) animation.runImageAnimation( player, -[img`.`,img`.`], +dunk_imgs.dribble, 75, true ) @@ -586,12 +528,6 @@ and switch to the gallery tab. - :mouse pointer: Select **any of the trick animations** and click **Done**. -~hint See the Video 📺 - -![Blaise Tutorial Video](youtube:e4OVA6Xpl18?start=836) - -hint~ - @@ -603,14 +539,39 @@ controller.A.onEvent(ControllerButtonEvent.Pressed, function () { //@highlight animation.runImageAnimation( player, -[img`.`,img`.`], + [img` +...........ffffff....... +.........fffffffff...... +.........ffffffcfff..... +........ffffcfffcfff.... +........fcffccfffccff... +........fccffffefffff... +........fffffffeefff.... +........ffeefbfeefff.... +........ffe4e1f44ff..... +.........fe4e4444f...... +.........f4444444f...... +........cffffffff....... +.......cfffffffffc...... +.......cffb44fffffc..... +.......cffb44fffffc..... +.......cfffb4411cf4ccc.. +.......cffffc111cf411c.. +.......dfffffcccffb1fff. +........dffffffffccf4f4f +.......c22222222bc.fffff +.......c2222222bc..f4f4f +.......c2222bbb2c...fff. +......c2222bcb22c....... +......cfffffccfffc...... +`], 75, false ) pause(850) animation.runImageAnimation( player, -[img`.`,img`.`], + dunk_imgs.dribble, 75, true ) @@ -618,36 +579,87 @@ controller.A.onEvent(ControllerButtonEvent.Pressed, function () { ``` -## {Step 20} + +```blockconfig.local +controller.A.onEvent(ControllerButtonEvent.Pressed, function () { + animation.runImageAnimation( + player, +dunk_imgs.spin, + 75, + false + ) + pause(850) + animation.runImageAnimation( + player, +dunk_imgs.dribble, + 75, + true + ) +}) +``` + + + +## {Step 19} **🎥 Back to Running 🎥** --- -- :paint brush: We need to make sure to include a block for your player to start the running animation again. Otherwise the player disappears! Click **the second** empty grey box in the bundle +- :paint brush: We need to make sure to include a block for your player to +restart the dribble animation, otherwise the player disappears! +Click **the second** empty grey box in the bundle ```block let player: Sprite = null controller.A.onEvent(ControllerButtonEvent.Pressed, function () { - animation.runImageAnimation( player, [img`.`], 75, false ) + animation.runImageAnimation( + player, + [img` +...........ffffff....... +.........fffffffff...... +.........ffffffcfff..... +........ffffcfffcfff.... +........fcffccfffccff... +........fccffffefffff... +........fffffffeefff.... +........ffeefbfeefff.... +........ffe4e1f44ff..... +.........fe4e4444f...... +.........f4444444f...... +........cffffffff....... +.......cfffffffffc...... +.......cffb44fffffc..... +.......cffb44fffffc..... +.......cfffb4411cf4ccc.. +.......cffffc111cf411c.. +.......dfffffcccffb1fff. +........dffffffffccf4f4f +.......c22222222bc.fffff +.......c2222222bc..f4f4f +.......c2222bbb2c...fff. +......c2222bcb22c....... +......cfffffccfffc...... +`], + 75, + false + ) pause(850) //@highlight - animation.runImageAnimation( player, [img`.`], 75, true ) + animation.runImageAnimation( + player, + dunk_imgs.dribble, + 75, + true + ) +}) }) ``` - and switch to the gallery tab. -- :mouse pointer: Choose the **dribbling** animation and select **Done**. - - -~hint See the Video 📺 - -![Blaise Tutorial Video](youtube:e4OVA6Xpl18?start=891) - -hint~ +- :mouse pointer: Choose the **dribble** animation and select **Done**. @@ -658,40 +670,104 @@ let player: Sprite = null controller.A.onEvent(ControllerButtonEvent.Pressed, function () { animation.runImageAnimation( player, -[img`.`,img`.`], + [img` +...........ffffff....... +.........fffffffff...... +.........ffffffcfff..... +........ffffcfffcfff.... +........fcffccfffccff... +........fccffffefffff... +........fffffffeefff.... +........ffeefbfeefff.... +........ffe4e1f44ff..... +.........fe4e4444f...... +.........f4444444f...... +........cffffffff....... +.......cfffffffffc...... +.......cffb44fffffc..... +.......cffb44fffffc..... +.......cfffb4411cf4ccc.. +.......cffffc111cf411c.. +.......dfffffcccffb1fff. +........dffffffffccf4f4f +.......c22222222bc.fffff +.......c2222222bc..f4f4f +.......c2222bbb2c...fff. +......c2222bcb22c....... +......cfffffccfffc...... +`], 75, false ) pause(850) - //@highlight animation.runImageAnimation( player, -[img`.`,img`.`], + [img` +...........ffffff....... +.........fffffffff...... +.........ffffffcfff..... +........ffffcfffcfff.... +........fcffccfffccff... +........fccffffefffff... +........fffffffeefff.... +........ffeefbfeefff.... +........ffe4e1f44ff..... +.........fe4e4444f...... +.........f4444444f...... +........cffffffff....... +.......cfffffffffc...... +.......cffb44fffffc..... +.......cffb44fffffc..... +.......cfffb4411cf4ccc.. +.......cffffc111cf411c.. +.......dfffffcccffb1fff. +........dffffffffccf4f4f +.......c22222222bc.fffff +.......c2222222bc..f4f4f +.......c2222bbb2c...fff. +......c2222bcb22c....... +......cfffffccfffc...... +`], 75, true ) }) ``` -## {Step 21} -**⌛ Check pause time ⌛** - -- :sync: Depending on which trick animation you choose, the animation may **stop early** or **pause**. Adjust the number in the -```block -pause(850) +```blockconfig.local +controller.A.onEvent(ControllerButtonEvent.Pressed, function () { + animation.runImageAnimation( + player, +dunk_imgs.spin, + 75, + false + ) + pause(850) + animation.runImageAnimation( + player, +dunk_imgs.dribble, + 75, + true + ) +}) ``` -pause block to match the timing of the animation. You may need to experiment to get it right. 🔬 -~hint See the Video 📺 -![Blaise Tutorial Video](youtube:e4OVA6Xpl18?start=952) -hint~ +## {Step 20} +**⌛ Check pause time ⌛** +- :sync: Depending on which trick animation you choose, the animation may +**stop early** or **pause**. Adjust the number in the pause block +```block +pause(850) +``` +to match the timing of the animation. +You may need to experiment to get it right. 🔬 #### ~ tutorialhint @@ -701,7 +777,32 @@ let player: Sprite = null controller.A.onEvent(ControllerButtonEvent.Pressed, function () { animation.runImageAnimation( player, -[img`.`,img`.`], + [img` +...........ffffff....... +.........fffffffff...... +.........ffffffcfff..... +........ffffcfffcfff.... +........fcffccfffccff... +........fccffffefffff... +........fffffffeefff.... +........ffeefbfeefff.... +........ffe4e1f44ff..... +.........fe4e4444f...... +.........f4444444f...... +........cffffffff....... +.......cfffffffffc...... +.......cffb44fffffc..... +.......cffb44fffffc..... +.......cfffb4411cf4ccc.. +.......cffffc111cf411c.. +.......dfffffcccffb1fff. +........dffffffffccf4f4f +.......c22222222bc.fffff +.......c2222222bc..f4f4f +.......c2222bbb2c...fff. +......c2222bcb22c....... +......cfffffccfffc...... +`], 75, false ) @@ -709,19 +810,44 @@ controller.A.onEvent(ControllerButtonEvent.Pressed, function () { pause(850) animation.runImageAnimation( player, -[img`.`,img`.`], + [img` +...........ffffff....... +.........fffffffff...... +.........ffffffcfff..... +........ffffcfffcfff.... +........fcffccfffccff... +........fccffffefffff... +........fffffffeefff.... +........ffeefbfeefff.... +........ffe4e1f44ff..... +.........fe4e4444f...... +.........f4444444f...... +........cffffffff....... +.......cfffffffffc...... +.......cffb44fffffc..... +.......cffb44fffffc..... +.......cfffb4411cf4ccc.. +.......cffffc111cf411c.. +.......dfffffcccffb1fff. +........dffffffffccf4f4f +.......c22222222bc.fffff +.......c2222222bc..f4f4f +.......c2222bbb2c...fff. +......c2222bcb22c....... +......cfffffccfffc...... +`], 75, true ) }) ``` -## {Step 22} +## {Step 21} **🎮 Want variety? 🎮** -- :game: You can **add multiple tricks** by following the **same process**, but **adjusting which button is pressed**. Grab the - +- :game: You can **add multiple tricks** by following the **same process**, +but **adjusting which button is pressed**. Grab another ```block let player: Sprite = null controller.A.onEvent(ControllerButtonEvent.Pressed, function () { @@ -740,15 +866,10 @@ controller.A.onEvent(ControllerButtonEvent.Pressed, function () { ) }) ``` +bundle, and swap the **A** to **B**. -bundle, and swap the **A** to **B**. After adding the animations, your player will perform your chosen trick when **pressing the B button**! - - -~hint See the Video 📺 +After adding animations, your player will perform your chosen trick when **pressing the B button**! -![Blaise Tutorial Video](youtube:e4OVA6Xpl18?start=1091) - -hint~ @@ -760,122 +881,111 @@ let player: Sprite = null //@highlight controller.B.onEvent(ControllerButtonEvent.Pressed, function () { - animation.runImageAnimation( player, [img`.`,img`.`], 75, false) + animation.runImageAnimation( + player, + [img` +...........ffffff....... +.........fffffffff...... +.........ffffffcfff..... +........ffffcfffcfff.... +........fcffccfffccff... +........fccffffefffff... +........fffffffeefff.... +........ffeefbfeefff.... +........ffe4e1f44ff..... +.........fe4e4444f...... +.........f4444444f...... +........cffffffff....... +.......cfffffffffc...... +.......cffb44fffffc..... +.......cffb44fffffc..... +.......cfffb4411cf4ccc.. +.......cffffc111cf411c.. +.......dfffffcccffb1fff. +........dffffffffccf4f4f +.......c22222222bc.fffff +.......c2222222bc..f4f4f +.......c2222bbb2c...fff. +......c2222bcb22c....... +......cfffffccfffc...... +`], + 75, + false + ) pause(850) - animation.runImageAnimation(player, [img`.`,img`.`], 75, true) -}) -``` - -## {Step 23} - -**🎮 Let's try some tricks! 🎮** - -Now when you press the **A or B button**, your player will perform the tricks you've chosen. - -Try using some tricks while avoiding pylons for 30 seconds! - - - -## {Step 24} - -**🏀 Time to dunk! 🏀** - -- :id card: Now it's time for the **big finale!** Grab the - -```block -let player: Sprite = null -info.onCountdownEnd(function () { - sprites.destroyAllSpritesOfKind(SpriteKind.Projectile) - scroller.scrollBackgroundWithSpeed(0, 0) - animation.runImageAnimation(player,[img`.`,img`.`],75, false) -}) -``` - -bundle from the Info category and drag it into an **empty area** of the workspace. - -This code will remove any pylons, stop your player from moving across the court, and begin the dunk animation. - - -~hint See the Video 📺 - -![Blaise Tutorial Video](youtube:e4OVA6Xpl18?start=1146) - -hint~ - - -#### ~ tutorialhint - -```blocks -let player: Sprite = null -info.onCountdownEnd(function () { - sprites.destroyAllSpritesOfKind(SpriteKind.Projectile) - scroller.scrollBackgroundWithSpeed(0, 0) animation.runImageAnimation( - player,[img`.`,img`.`],75,false ) + player, + [img` +...........ffffff....... +.........fffffffff...... +.........ffffffcfff..... +........ffffcfffcfff.... +........fcffccfffccff... +........fccffffefffff... +........fffffffeefff.... +........ffeefbfeefff.... +........ffe4e1f44ff..... +.........fe4e4444f...... +.........f4444444f...... +........cffffffff....... +.......cfffffffffc...... +.......cffb44fffffc..... +.......cffb44fffffc..... +.......cfffb4411cf4ccc.. +.......cffffc111cf411c.. +.......dfffffcccffb1fff. +........dffffffffccf4f4f +.......c22222222bc.fffff +.......c2222222bc..f4f4f +.......c2222bbb2c...fff. +......c2222bcb22c....... +......cfffffccfffc...... +`], + 75, + true + ) }) ``` -## {Step 25} -**🎥 Let's get animating 🎥** - ---- - -- :paint brush: Select the default dunk animation. Click the **empty grey box** in the bundle -```block -let player: Sprite = null -info.onCountdownEnd(function () { - sprites.destroyAllSpritesOfKind(SpriteKind.Projectile) - scroller.scrollBackgroundWithSpeed(0, 0) - //@highlight +```blockconfig.local +controller.A.onEvent(ControllerButtonEvent.Pressed, function () { animation.runImageAnimation( player, -[img`.`,img`.`], +dunk_imgs.spin, 75, false ) + pause(850) + animation.runImageAnimation( + player, +dunk_imgs.dribble, + 75, + true + ) }) ``` -and switch to the gallery tab. - - -- :mouse pointer: Select the **dunk animation**. - -~hint See the Video 📺 -![Blaise Tutorial Video](youtube:e4OVA6Xpl18?start=1189) - -hint~ - - -#### ~ tutorialhint - -```blocks -let player: Sprite = null -info.onCountdownEnd(function () { - sprites.destroyAllSpritesOfKind(SpriteKind.Projectile) - scroller.scrollBackgroundWithSpeed(0, 0) - //@highlight - animation.runImageAnimation(player, [img`f`], 75, false) +## {Step 22} -}) -``` +**🎮 Let's try some tricks! 🎮** -## {Step 26} +When you press the **A or B button**, your player will perform the tricks +you've chosen. +Try doing some tricks while avoiding pylons for 30 seconds! -**Play your game until time is out **
-🎮 🎮 🎮 -How cool is that?!? ## {Finale} **Now make it your own! **
🏀 🏀 🏀 -You can customize any of the animations to make the game your own. Try remixing some of the tricks, and create a new dunk animation! +You can customize any of the animations by drawing new frames. + +Try remixing some of the tricks and see how many you can do while avoiding the pylons. When you're ready, click **Done** to share your game! @@ -888,36 +998,23 @@ When you're ready, click **Done** to share your game! ```blockconfig.global -animation.runImageAnimation(player, [img`.`], 100, true) +animation.runImageAnimation(player, dunk_imgs.dribble, 100, true) sprites.onOverlap(SpriteKind.Player, SpriteKind.Projectile, function (sprite, otherSprite) {}) -let player = sprites.create(img`.`, SpriteKind.Player) +let player = sprites.create(dunk_imgs.dribble_stand, SpriteKind.Player) game.over(true) +scene.setBackgroundImage(dunk_imgs.court_w_people) controller.moveOnlyOnscreenWithArrows(player, controller.Speeds.Fast) scroller.scrollBackgroundWithSpeed(-90, 0) info.startCountdown(30) cone.destroy() forever(function () { while (info.countdown() > 0) { - let cone = sprites.createProjectileFromSide(img`.`, -90, 0) + let cone = sprites.createProjectileFromSide(dunk_imgs.pylon, -90, 0) cone.y = randint(25, 115) pause(randint(50, 100)) } }) -controller.A.onEvent(ControllerButtonEvent.Pressed, function () { - animation.runImageAnimation( - player, - [img`.`,img`.`], - 75, - false - ) - pause(850) - animation.runImageAnimation( - player, - [img`.`,img`.`], - 75, - true - ) -}) + info.onCountdownEnd(function () { sprites.destroyAllSpritesOfKind(SpriteKind.Projectile) scroller.scrollBackgroundWithSpeed(0, 0) @@ -935,7 +1032,7 @@ info.onCountdownEnd(function () { ```package arcade-background-scroll=github:microsoft/arcade-background-scroll/ -dunk-imgs=github:kiki-lee/dunk-imgs +dunk_imgs=github:kiki-lee/dunk_imgs#v0.0.3 ``` @@ -960,8 +1057,8 @@ sprites.onOverlap(SpriteKind.Player, SpriteKind.Projectile, function (sprite, ot }) let cone: Sprite = null let player: Sprite = null -player = sprites.create(assets.image`HarrytheHawk`, SpriteKind.Player) -scene.setBackgroundImage(assets.image`BB Court w Audience`) +player = sprites.create(dunk_imgs.dribble_stand, SpriteKind.Player) +scene.setBackgroundImage(dunk_imgs.court_w_people) player.setStayInScreen(true) info.setLife(5) scroller.scrollBackgroundWithSpeed(-90, 0) @@ -974,7 +1071,7 @@ true ) forever(function () { while (info.countdown() > 0) { - let cone = sprites.createProjectileFromSide(assets.image`Pylon`, -90, 0) + let cone = sprites.createProjectileFromSide(dunk_imgs.pylon, -90, 0) cone.y = randint(25, 115) pause(randint(50, 100)) } @@ -1059,18 +1156,3 @@ namespace controller{ } ``` - - -```assetjson -{ - "assets.json": "", - "images.g.jres": "{\n \":-%p!6dsfn@Cn4?(/f-u\": {\n \"data\": \"hwQQABAAAAAAAAAA/wAAAAAAAPBE/wAAAAAAT0REDwAAAPD0/0QPAAAA/08RT/QAAPAfQRTxRA/wT0QRRBFPD09ERBFEEU/0T0REEUQRT/TwT0QRRBFPDwDwH0EU8UQPAAD/TxFP9AAAAPD0/0T0AAAAAE9ERA8AAAAA8ET0AAAAAAAA/w8AAA==\",\n \"mimeType\": \"image/x-mkcd-f4\",\n \"displayName\": \"Pylon\"\n },\n \"image4\": {\n \"data\": \"hwQQABAAAAAA8P////8PAABPRPRPRPQA8P9E9E9E/w9P9E/0T/RP9E9E/////0T0T0T0//9PRPRPRET0T0RE9P////////////////////9PRET0T0RE9E9E9P//T0T0T0T/////RPRP9E/0T/RP9PD/RPRPRP8PAE9E9E9E9AAA8P////8PAA==\",\n \"mimeType\": \"image/x-mkcd-f4\",\n \"displayName\": \"Bball\"\n },\n \"image6\": {\n \"data\": \"hwSgAHgAAADbvd3bvd3bvd3bvS3S3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3bvd3bvd3bvd3bvS3S3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3bvd3bvd3bvd3bvS3S3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3///////+PgYj//y/S3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3////////4gYj//y/S3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3//////4/f3Y+IiCjS3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3//////4/d3Y2IiCjS3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3//////4/9/Y2IiCjS3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3//////4/d/Y2IiCjS3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3/+P///4/9/Y2IiCjS3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d2P//9VVYXd3Y2IiCjS3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d34ZvZVVYXf3Y+IiCjS3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d3d3d3d3d1ob2ZVVVX4gYj//y/S3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d3d3d3d3d1oZm9VVVWFgYj//y/S3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d3d3d3d3d1oZm9VVVWF/////y/S3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d3d3d3d3d1ob2ZVVVX4/0RERCTS3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d3d3d3d3d34ZvZVVYXvTkRERCTS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d3d3d3d3d2P//9VVYXuTvRERCTS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d3d3d3d3d3/+P///4/+3k5ERCTS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d3d3d3d3d3//////4/u/k5ERCTS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d3d3d3d3d3/+P///4/+3k5ERCTS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d3d3d3d3d2P//8iIoLuTvRERCTS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d3d3d3d3d34qvoiIoLvTkRERCTS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d3d3d3d3d2or6oiIiL4/0RERCTS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d3d3d3d3d2oqq8iIiKC/////y/S3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d3d3d3d3d2oqq8iIiKC//+ZmSnS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d3d3d3d3d2or6oiIiL4//+ZmSnS3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d3d3d3d3d34qvoiIoI/M5+Z/y/S3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d3d3d3d3d2P//8iIoIzP5OZmSnS3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d3d3d3d3d3/+P///4/z85OZmSnS3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d3d3d3d3d3//////48z85OZmSnS3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d3d3d3d3d3//////4/z85OZmSnS3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d3d3d3d3d3//////48zP5OZmSnS3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3//////48/M5+Z/y/S3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3////////4//+ZmSnS3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3///////+P//+ZmSnS3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3bvd3bvd3bvd3bvS3S3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3bvd3bvd3bvd3bvS3S3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d3bvd3bvd3bvd3bvS3S3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d3bvd3bvd3bvd3bvS3S3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d3bvd3bvd3bvd3bvS3S3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d3bvd3bvd3bvd3bvS3S3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d3bvd3bvd3bvd3bvS3S3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d3///////+P/////y/S3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d3////////4/2ZmZibS3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d3//////49PZGZmZibS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d3//////49EZPZmZibS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d3//////4/01GRmZibS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d3//////49E9GRmZibS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d3/+P///4/01GRmZibS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d2P//8zM4NEZPZmZibS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d343f0zM4NPZGZmZibS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d3Y390zMzP4/2ZmZibS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d3Y3d8zMzOD/////y/S3d3d3d3d3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d3Y3d8zMzOD//8iIiLS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d3Y390zMzP4//8iIiLS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d343f0zM4OfmS8i/y/S3d3d3d3d3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d2P//8zM4OZnykiIiLS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3/+P///4/5+SkiIiLS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3//////4+Z+SkiIiLS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3/+P///4/5+SkiIiLS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d2P///MzIyZnykiIiLS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d34d/fMzIyfmS8iIiLS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d14f3fMzMz4LSLy/y/S3d3d3d3d3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d14d3/MzMyMLSL//y/S3d3d3d3d3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d14d3/MzMyM//+7uyvS3d3d3t3d3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d14f3fMzMz4//+7uyvS3d3d3t3d3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d34d/fMzIzv7r+7/y/S3d3d3t3d3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d2P///MzIzu7r67uyvS3d3d3t3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3/+P///4/+7r67uyvS3d3d3t3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3//////4/u/r67uyvS3d3d3t3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3//////4/+7r67uyvS3d3d3t3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3//////4/u7r67uyvS3d3d3t3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3//////4/v7r+7/y/S3d3d3t3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3////////4//+7uyvS3d3d3t3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d3d3d3d3d3d3bvd3bvd3bvd3bvS3S3d3d3t3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d3d3d3d3d3d3bvd3bvd3bvd3bvS3S3d3d3t3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d3d3d3d3d3d3bvd3bvd3bvd3bvS3S3d3d3t3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d3d3d3d3d3d3bvd3bvd3bvd3bvS3S3d3d3t3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d3d3d3d3d3d3bvd3bvd3bvd3bvS3S3d3d3t3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d3d3d3d3d3d3bvd3bvd3bvd3bvS3S3d3d3t3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d3d3d3d3d3d3bvd3bvd3bvd3bvS3S3d3d3t3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d3d3d3d3d3d3///////+P///u7i7S3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d3d3d3d3d3d3////////4///u7i7S3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d3d3d3d3d3d3//////49vZu/u/y/S3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d3d3d3d3d3d3//////49mb+bu7i7S3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d3d3d3d3d3d3//////4/29ubu7i7S3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d3d3d3d3d3d3//////49m9ubu7i7S3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d3d3d3d3d3d3/+P///4/29ubu7i7S3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d3d3d3d3d3d2P//9ERIRmb+bu7i7S3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d3d3d3d3d3d34M/NERIRvZu/u/y/S3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3d3d3d3d3d3d04PzNERET4///u7i7S3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d04Mz9ERESE///u7i7S3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d04Mz9ERESEdHf//y/S3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d04PzNERET4dHf//y/S3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d34M/NERIRfVX93dyfS3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d2P//9ERIRVVXV3dyfS3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3/+P///4/19XV3dyfS3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3//////49V9XV3dyfS3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3/+P///4/19XV3dyfS3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d2P//+IiIhVVXV3dyfS3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d34IvKIiIhfVX93dyfS3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0oLyKIiIj4dHf//y/S3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d0oIi+IiIiIdHf//y/S3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d0oIi+IiIiI//+ZmSnS3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d0oLyKIiIj4//+ZmSnS3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d34IvKIiIi/u5+Z/y/S3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d2P//+IiIi7v5uZmSnS3d3d3d3d3d3d3e3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3/+P///4/7+5uZmSnS3d3d3d3d3d3d3e3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3//////4+7+5uZmSnS3d3d3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3//////4/7+5uZmSnS3d3d3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3//////4+7v5uZmSnS3d3d3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3//////4+/u5+Z/y/S3d3d3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3////////4//+ZmSnS3d3d3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3bvd3bvd3bvd3bvS3S3d3d3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3bvd3bvd3bvd3bvS3S3d3d3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3bvd3bvd3bvd3bvS3S3d3d3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3bvd3bvd3bvd3bvS3S3d3d3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3bvd3bvd3bvd3bvS3S3d3d3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3bvd3bvd3bvd3bvS3S3d3d3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3t3d3d3d3bvd3bvd3bvd3bvS3S3d3d3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3///////+P//8zMyPS3d3d3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3////////4//8zMyPS3d3d3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3//////4/v7j8z/y/S3d3d3d3d3d3d3d3d3d3d3d3d3e3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3//////4/u7z4zMyPS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3//////4/+/j4zMyPS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3//////4/u/j4zMyPS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3/+P///4/+/j4zMyPS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d2P//9VVYXu7z4zMyPS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d34mflVVYXv7j8zMyPS3d3t3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d2Yn5lVVVX4PTP//y/S3d3t3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d2YmZ9VVVWFPTP//y/S3d3t3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d2YmZ9VVVWF///d3S3S3d3t3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d2Yn5lVVVX4///d3S3S3d3t3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d34mflVVYV/d9/d/y/S3d3t3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d2P//9VVYV3d9fd3S3S3d3t3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d3/+P///4/399fd3S3S3d3t3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d3//////49399fd3S3S3d3t3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d3/+P///4/399fd3S3S3d3t3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d2P///MzIx3d9fd3S3S3d3t3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d343f3MzIx/d9/d/y/S3d3t3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d3Y393MzMz4///d3S3S3d3t3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d3Y3d/MzMyM///d3S3S3d3t3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d3Y3d/MzMyMpar//y/S3d3t3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d7d3d3d3d3d3d3d3d3d3Y393MzMz4par//y/S3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d343f3MzIxPRK+qqirS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d2P///MzIxERKSqqirS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3/+P///4/0RKSqqirS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3//////49E9KSqqirS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3//////4/0RKSqqirS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3//////49ERKSqqirS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3//////49PRK+qqirS3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3////////4par//y/S3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3///////+Ppar//y/S3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3///////+P/////y/S3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3////////4/////y/S3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3bvd3bvd3bvd3bvS3S3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3bvd3bvd3bvd3bvS3S3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3bvd3bvd3bvd3bvS3S3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3bvd3bvd3bvd3bvS3S3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d0=\",\n \"mimeType\": \"image/x-mkcd-f4\",\n \"displayName\": \"BB Court w Audience\"\n },\n \"image2\": {\n \"data\": \"hwQYABgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMwAAAAAAADMzNzAzPIA8P//D8D///8tIvLw/8z///////8vIvLw/8/v7vS/+/8vIvL////vRPRPtP8vIvv/z/z/7vRPRPwvssz///y/QfT/T8Evssv/////T/T/H8EvsvL//O/uRPT/H8EvK/L/z//uRPT/z/y/zPzw//z//w/8///MAMAA//z/DwDATLQMAAAA8P//AAAAwBH/DwAAAP8AAAAAwPH09AAAAAAAAAAAwPz//wAAAAAAAAAAAPD09AAAAAAAAAAAAAD/DwA=\",\n \"mimeType\": \"image/x-mkcd-f4\",\n \"displayName\": \"HarrytheHawk\"\n },\n \"*\": {\n \"mimeType\": \"image/x-mkcd-f4\",\n \"dataEncoding\": \"base64\",\n \"namespace\": \"myImages\"\n }\n}", - "images.g.ts": "// Auto-generated code. Do not edit.\nnamespace myImages {\n\n helpers._registerFactory(\"image\", function(name: string) {\n switch(helpers.stringTrim(name)) {\n case \":-%p!6dsfn@Cn4?(/f-u\":\n case \"Pylon\":return img`\n. . . . . . . f f . . . . . . . \n. . . . . . f 4 4 f . . . . . . \n. . . . . . f 4 4 f . . . . . . \n. . . . . f 4 4 4 4 f . . . . . \n. . . . f f 4 4 4 4 f f . . . . \n. . . f f 1 4 4 4 4 1 f f . . . \n. . f 4 f 1 1 1 1 1 1 f 4 f . . \n. f 4 f 4 4 1 1 1 1 4 4 f 4 f . \nf 4 4 f 1 4 4 4 4 4 4 1 f 4 4 f \nf 4 4 f 1 1 4 4 4 4 1 1 f 4 4 f \n. f 4 4 f 1 1 1 1 1 1 f 4 4 4 f \n. f 4 4 4 f 1 1 1 1 f 4 4 4 f . \n. . f f 4 4 f f f f 4 4 4 f . . \n. . . . f 4 4 4 4 4 4 f f . . . \n. . . . . f f 4 4 f f . . . . . \n. . . . . . . f f . . . . . . . \n`;\n case \"image4\":\n case \"Bball\":return img`\n. . . f f f f f f f f f f . . . \n. . f 4 4 4 4 f f 4 4 4 4 f . . \n. f f 4 4 4 4 f f 4 4 4 4 f f . \nf 4 f f 4 4 4 f f 4 4 4 f f 4 f \nf 4 4 f f 4 4 f f 4 4 f f 4 4 f \nf 4 4 4 f f 4 f f 4 f f 4 4 4 f \nf 4 4 4 f f 4 f f 4 f f 4 4 4 f \nf f f f f f f f f f f f f f f f \nf f f f f f f f f f f f f f f f \nf 4 4 4 f f 4 f f 4 f f 4 4 4 f \nf 4 4 4 f f 4 f f 4 f f 4 4 4 f \nf 4 4 f f 4 4 f f 4 4 f f 4 4 f \nf 4 f f 4 4 4 f f 4 4 4 f f 4 f \n. f f 4 4 4 4 f f 4 4 4 4 f f . \n. . f 4 4 4 4 f f 4 4 4 4 f . . \n. . . f f f f f f f f f f . . . \n`;\n case \"image6\":\n case \"BB Court w Audience\":return img`\nbbbffffffff888888fffff888888ffffffffbbbbbbbffffffff888888fffff888888fffffffbbbbbbbffffffff888888fffff888888fffffffbbbbbbbffffffff888888fffff888888ffffffffffbbbb\ndddfffffff8f6666f8fff8faaaaf8fffffffdddddddfffffff8fddddf8fff8f7777f8ffffffdddddddfffffff8f3333f8fff8f2222f8ffffffdddddddfffffff8f9999f8fff8fddddf8fffffffffdddd\ndddffffff8f6f66f6f8f8fafaafaf8ffffffdddddddffffff8fdfddfdf8f8f7f77f7f8fffffdddddddffffff8f3f33f3f8f8f2f22f2f8fffffdddddddffffff8f9f99f9f8f8fdfddfdf8ffffffffdddd\nbbbffffffff666666fffffaaaaaaffffffffbbbbbbbffffffffddddddfffff777777fffffffbbbbbbbffffffff333333fffff222222fffffffbbbbbbbffffffff999999fffffddddddffffffffffbbbb\ndddffffffff66ff66fffffaaffaaffffffffdddddddffffffffddffddfffff77ff77fffffffdddddddffffffff33ff33fffff22ff22fffffffdddddddffffffff99ff99fffffddffddffffffffffdddd\ndddfffffffff6666fffffffaaaafffffffffdddddddfffffffffddddfffffff7777ffffffffdddddddfffffffff3333fffffff2222ffffffffdddddddfffffffff9999fffffffddddfffffffffffdddd\nbbbfffffff55555555fff22222222fffffffbbbbbbbfffffff33333333fffccccccccffffffbbbbbbbfffffff44444444fff88888888ffffffbbbbbbbfffffff55555555fffccccccccfffffffffbbbb\ndddfffffff55555555fff22222222fffffffdddddddfffffff33333333fffccccccccffffffdddddddfffffff44444444fff88888888ffffffdddddddfffffff55555555fffccccccccfffffffffdddd\ndddfffffff55555555fff22222222fffffffdddddddfffffff33333333fffccccccccffffffdddddddfffffff44444444fff88888888ffffffdddddddfffffff55555555fffccccccccfffffffffdddd\nbbbfffffff55555555fff22222222fffffffbbbbbbbfffffff33333333fffccccccccffffffbbbbbbbfffffff44444444fff88888888ffffffbbbbbbbfffffff55555555fffccccccccfffffffffbbbb\ndddfffffff55555555fff22222222fffffffdddddddfffffff33333333fffccccccccffffffdddddddfffffff44444444fff88888888ffffffdddddddfffffff55555555fffccccccccfffffffffdddd\ndddff88888885555888888822228888888ffdddddddff888888833338888888cccc8888888fdddddddff88888884444888888888888888888fdddddddff888888855558888888cccc8888888ffffdddd\nbbbf8fdddddf8558feeeeef8228f33333f8fbbbbbbbf8f44444f8338f99999f8cc8feeeeef8bbbbbbbf8f66666f8448f55555f8888fbbbbbf8bbbbbbbf8feeeeef8558f77777f8cc8f44444f8ff8bbbb\nddd8fddfdfddf88feefefeef88f33f3f33f8ddddddd8f44f4f44f88f99f9f99f88feefefeefddddddd8f66f6f66f88f55f5f55f88fbbfbfbbfddddddd8feefefeef88f77f7f77f88f44f4f44f88fdddd\nddd11ddddddd11ffeeeeeeeffff3f333f3ffdddddddff4444444ffff9f999f9ddffeeeeeeefdddddddff6f666f6ff44555555544ffbfbbbfbfdddddddffefeeefeddff7777777ff55444444455ffdddd\nbbb88ddfffdd88ff44dfd44ffff33fff33ffbbbbbbbff66dfd66ffff99fff9922ffeeefeeefbbbbbbbff66fff66ff7755fff5577ffbbfffbbfbbbbbbbffeefffee33ff77fff77ffaa444f444aaffbbbb\nddd88fdddddf88f444eee444ffff33333fffdddddddf666444666ffff99999f22fffeeeeeffdddddddfff66666fff77f55555f77fffbbbbbffdddddddfffeeeeef33fff77777fffaaf44444faaffdddd\nddd88888888888f44f444f44fff9999999ffdddddddf66f666f66fff222222222ffbbbbbbbfdddddddffeeeeeeeff77777777777ff9999999fdddddddff333333333ffdddddddffaaaaaaaaaaaffdddd\nbbbff8888888fff444444444f99999999999bbbbbbbf666666666f2222222222fbbbbbbbbbbbbbbbbbeeeeeeeeeeeff7777777ff9999999999bbbbbbb333333333ffdddddddddddffaaaaaaaffffbbbb\ndddff8888888fff444444444f99999999999dddddddf666666666f222222222ffbbbbbbbbbbdddddddeeeeeeeeeeeff7777777ff9999999999ddddddd333333333ffdddddddddddffaaaaaaaffffdddd\ndddff8888888fff444444444f99f99999f99dddddddf666666666f22f222222ffbbfbbbbbfbdddddddeefeeeeefeeff7777777ff99f99999f9ddddddd33f333333ffddfdddddfddffaaaaaaaffffdddd\nbbbff8888888fff444444444f99f99999f99bbbbbbbf666666666f22f222222ffbbfbbbbbfbbbbbbbbeefeeeeefeeff7777777ff99f99999f9bbbbbbb33f333333ffddfdddddfddffaaaaaaaffffbbbb\ndddff8888888fff444444444f99f99999f99dddddddf666666666f22f222222ffbbfbbbbbfbdddddddeefeeeeefeeff7777777ff99f99999f9ddddddd33f333333ffddfdddddfddffaaaaaaaffffdddd\n2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\n2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddeeeeeeeeeeeeeeedddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddeeeeeeeeeeeeeeeeedddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\neeeeeeeeeeeeeeeedddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddeeeeeeeeeeeeeeeeeeddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\nddddddddddddddddddddddddddeeeeeeeeeeeeeeeeeeeddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddeeeeeeeeeeeeeeeeedddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddeeeeeeeeeeeeeeeeeeedddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddeeeeeeeeeeeeeeeeeeeeedddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\nddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddeeeeeeeeeeeeeeeeeddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddeeeeeeeeeeeeeeedddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddeeeeeeeeeeeeeeeeeeeeddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\nddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddeeeeeeeeeeeeeeeeeedddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\ndddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd\n`;\n case \"image2\":\n case \"HarrytheHawk\":return img`\n...........ffffff.......\n.........fffffffff......\n.........ffffffcfff.....\n........ffffcfffcfff....\n........fcffccfffccff...\n........fccffffefffff...\n........fffffffeefff....\n........ffeefbfeefff....\n........ffe4e1f44ff.....\n.........fe4e4444f......\n.........f4444444f......\n........cffffffff.......\n.......cfffffffffc......\n.......cffb44fffffc.....\n.......cffb44fffffc.....\n.......cfffb4411cf4ccc..\n.......cffffc111cf411c..\n.......dfffffcccffb1fff.\n........dffffffffccf4f4f\n.......c22222222bc.fffff\n.......c2222222bc..f4f4f\n.......c2222bbb2c...fff.\n......c2222bcb22c.......\n......cfffffccfffc......\n`;\n }\n return null;\n })\n\n helpers._registerFactory(\"animation\", function(name: string) {\n switch(helpers.stringTrim(name)) {\n\n }\n return null;\n })\n\n helpers._registerFactory(\"song\", function(name: string) {\n switch(helpers.stringTrim(name)) {\n\n }\n return null;\n })\n\n}\n// Auto-generated code. Do not edit.\n", - "main.blocks": "Player1ConemySpriteHoopAnimationPlayerProjectileFoodEnemyGameOver", - "main.ts": " ", - "pxt.json": "{\n \"name\": \"dunk-imgs\",\n \"version\": \"0.0.1\",\n \"description\": \"\",\n \"dependencies\": {\n \"device\": \"*\"\n },\n \"files\": [\n \"main.blocks\",\n \"main.ts\",\n \"assets.json\",\n \"images.g.jres\",\n \"images.g.ts\",\n \"pxt.json\",\n \"tilemap.g.jres\",\n \"tilemap.g.ts\"\n ],\n \"testFiles\": [\n \"test.ts\"\n ],\n \"targetVersions\": {\n \"target\": \"1.12.29\",\n \"targetId\": \"arcade\"\n },\n \"supportedTargets\": [\n \"arcade\"\n ],\n \"preferredEditor\": \"tsprj\",\n \"palette\": [\n \"#000000\",\n \"#FFFFFF\",\n \"#FF2121\",\n \"#FF93C4\",\n \"#FF8135\",\n \"#FFF609\",\n \"#249CA3\",\n \"#78DC52\",\n \"#003FAD\",\n \"#87F2FF\",\n \"#757575\",\n \"#A4839F\",\n \"#5C406c\",\n \"#E5CDC4\",\n \"#91463d\",\n \"#000000\"\n ]\n}\n", - "test.ts": "// tests go here; this will not be compiled when this package is used as an extension.\n", - "tilemap.g.jres": "{\n \"transparency16\": {\n \"data\": \"hwQQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==\",\n \"mimeType\": \"image/x-mkcd-f4\",\n \"tilemapTile\": true\n },\n \"*\": {\n \"mimeType\": \"image/x-mkcd-f4\",\n \"dataEncoding\": \"base64\",\n \"namespace\": \"myTiles\"\n }\n}", - "tilemap.g.ts": "// Auto-generated code. Do not edit.\nnamespace myTiles {\n //% fixedInstance jres blockIdentity=images._tile\n export const transparency16 = image.ofBuffer(hex``);\n\n helpers._registerFactory(\"tile\", function(name: string) {\n switch(helpers.stringTrim(name)) {\n case \"transparency16\":return transparency16;\n }\n return null;\n })\n\n}\n// Auto-generated code. Do not edit.\n" -} -``` \ No newline at end of file