CS代考 CS106 W22 – Assignment 03 Due: Friday, January 28 2022, 11:59 PM

CS106 W22 – Assignment 03 Due: Friday, January 28 2022, 11:59 PM
Note: On each assignment we will be running a program called MOSS to detect cheating. MOSS compares your assignment to: all other students in CS106 this semester, code on the internet, and code from CS106 in previous years.
Assignment 3 is graded out of 22 marks.
You are to write a JavaScript p5 program to mimic what you see in the video:

Copyright By PowCoder代写 加微信 powcoder

https://vault.cs.uwaterloo.ca/s/Zr27jaZqo7ndkin
Begin with this starter code from the lecture slides “03 Input and Output” on slides 48-49:

Here is a 14-minute video with suggestions on how to proceed. We created it because some students asked for more guidance on how to proceed with coming up with a solution for each assignment. Watch it and see if it is helpful for you. https://vault.cs.uwaterloo.ca/s/EinnK3nQGPxgGfA
CS 106 | Winter 2022 | Assignment 03 | Page 1 of 4

Requirements and Grading You will create two sketches, A3_basic and A3_enhanced.
In A3_basic, you will implement as much required functionality as you can without any enhancements. Your goal is to match the video demonstration. This is the sketch the markers will evaluate for required functionality marks. Do this first.
In A3_enhanced, you can extend and deviate somewhat from the required functionality to show off your programming skill and design creativity. Do this second.
Required Functionality A3_basic: [ 12 marks]
Examine the starter code in detail, to ensure you understand it as this will give you insights into how to use the starter code with the code your write. Your requirements are:
• The sketch is 600×400. The background is 220. The text size is 36.
• [ 6 marks ] Randomly display either the chest, camal, and lamp animations from left to right starting at the top left of the canvas (see the video). Due to randomness there may be for example two camals and one chest, or three chests. All combinations are possible. (see the video).
Note: If there are three identical animations shown this is considered a win. Three chests is a win, three camels is a win, and three lamps is a win.
• [ 2 marks ] When you win, a random text message appears to indicate you have won. There must be three winning messages in a text file “win.txt” and your sketch must randomly select and display one of these.
• [ 2 marks ] When you win, the horn sound must play once.
• [ 2 marks ] When you lose, a random text message appears to indicate you have lost. There must be three losing messages in a text file “loss.txt” and your sketch must randomly select and display one of these.
CS 106 | Winter 2022 | Assignment 03 | Page 2 of 4

[ 4 marks ] Coding Style and Efficiency
Coding style is evaluated in all sketches.
Follow the course coding style for whitespace and comments. Consult the “Code Style Guide” on LEARN.
1) [ 0.5 ] Include your name and student ID number at the beginning of your code.
2) [ 0.5 ] Comment your code appropriately. Avoid superfluous comments.
3) [ 0.5 ] Correctly and consistently indent your code blocks.
4) [ 0.5 ] Use correct inline spacing.
5) [ 0.5 ] Use good line spacing to chunk sections of your code.
6) [ 0.5 ] All variable names are meaningfully chosen.
7) [ 0.5 ] No variables are declared but not used.
8) [ 0.5 ] You may not use any functions or statements not covered in lecture or labs. This
includes, but is not limited to:
• No translate(), rotate(), or scale() functions.
[ 6 marks ] Functionality or Visual Design Enhancements
Once you have basic functionality working (the “correctness” requirements above), enhance the functionality or the visual design in a sketch called A3_enhanced.
In comments at the top of your code, you must document your enhancements so that the person grading knows what enhancements you made.
To get these 6 marks for enhancements you must clearly demonstrate your use of JavaScript p5 and/or your creativity. If it is not done you get 0, if it is minimally done you get 1-3 out of 6, and if it is well done you get 4-6 marks. For example, if you add a splash screen with only the words “press any key to continue” then you would get 1 out of 6. To get 6 out of 6 you must do much more such as adding a nice splash screen, improving the look of the game significantly, and adding a points systems whereby each win (i.e. 3 lamps, or 3 camels, or 3 lamps) adds a certain number of points added and each loss subtracts point(s).
CS 106 | Winter 2022 | Assignment 03 | Page 3 of 4

Submitting
Use the template file in Word “CS106 Assignment Template” in LEARN (under Assignment 01) to create your Assignment 03 submission for your 2 sketches.
Then convert your Word file to pdf. Please ensure that your URLs are hot links. The TAs need to be able to click on each link in your pdf and go directly to your sketch.
So for example, don’t have a link like this: https://openprocessing.org/sketch/1050954
but rather have that link as a hot link as follows: https://openprocessing.org/sketch/1050954 Ensure that each URL you submit has its settings so that the access is as follows:
Submit that pdf file to the Assignment 03 dropbox on LEARN.
An example of how to do submit a Lab or Assignment sketch is shown in the following video from
Lab 0: https://vault.cs.uwaterloo.ca/s/MgPD3pBEMjmHQYz
CS 106 | Winter 2022 | Assignment 03 | Page 4 of 4

程序代写 CS代考 加微信: powcoder QQ: 1823890830 Email: powcoder@163.com