Problem Set: Returns
This section contains a number of selected problems for the Returns section.
It is recommended that you review the problems, and complete a few before moving on to the next section.
Problem #1: Current Season
Implement a ||functions:function|| called ||functions:currentSeason|| that
returns a ||text:string|| describing the current season
(for example, “Spring”, “Summer”, “Autumn”, or “Winter”).
Problem #2: Favorite Food
Write a short program in which you create a variable called ||variables:favoriteFood||,
and set it equal to the string describing what the player’s favorite food is
(use ||game:game.askForString||).
Then, implement a ||functions:function|| called ||functions:getFavoriteFood||
that takes in no parameters and returns the current value of ||variables:favoriteFood||.
Problem #3: createEnemy
Implement a ||functions:function|| called ||functions:createEnemy|| that takes no
parameters and uses ||sprites:sprites.create|| to return a ||sprites:sprite|| of
kind Enemy with an evil looking image.
Problem #4: Brick Builder
Implement a ||functions:function|| called ||functions:createBrick|| that takes in
three numbers as parameters: ||variables:width||, ||variables:height||,
and ||variables:color||.
The function should then return an ||images:Image|| with these attributes.
To do this, you will need to use two new functions, ||images:image.create||
and ||images:Image.fill||.
The function ||images:image.create|| takes in a ||variables:width|| and
a ||variables:height|| and returns a transparent ||images:Image|| with those dimensions.
image.create(0, 0);
Once you have an ||images:Image|| ||variables:myImage||,
calling the function||images:myImage.fill|| will modify the ||images:image||
be completely filled with the given ||variables:color||.
image.create(0, 0).fill(0);
When you are done, add it to the following snippet: the result should be a red bar across the center of the screen.
// Your function here
let myBrick = createBrick(screen.width, 16, 2);
sprites.create(myBrick);
Problem #5: Conversions
Angles can be tricky because there are two basic units: degrees and radians.
Degrees tend to be more commonly used for day-to-day purposes,
but radians are more commonly used in math and science.
In this problem, you will implement two ||functions:functions|| to allow you
to convert from one to the other.
It is important to know how exactly the values are measured when trying to convert from one unit to another.
A full circle can be represented by 360 degrees and by 2π radians
(π, or pi, is represented in JavaScript as ||math:Math.PI||):
if you divide both by two, you can see that 180 degrees is equal to π radians.
Using this information, you can convert a number from degrees to radians by multiplying
the value by ||Math:Math.PI|| and dividing it by 180.
Implement a ||functions:function|| called ||functions:toRadians|| that takes an
input called ||variables:angle|| that is an angle represented in degrees and returns
the radian equivalent of that angle.
Finally, implement another ||functions:function|| called ||functions:toDegrees||
that takes an input called ||variables:angle|| that is an angle represented in radians
and returns the degree equivalent of that angle.