You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

5.2 KiB

Landscaper

studio ghibli landscape

You'll be creating a simple, terminal game to send messages and receive input from the user.

Learning Objectives

  • Putting everything you've learned so far together (arrays, loops, conditionals)

Prerequisites

  • JavaScript (arrays, loops, conditionals)

Getting Started

  1. Inside of the student_labs directory there is already an app.js set up and ready to go!

Landscaper

  1. You are starting a landscaping business, but all you have are your teeth.

  2. Using just your teeth, you can spend the day cutting lawns and make $1. You can do this as much as you want.


    🔴 Commit your work!
    Your commit message should read something like:
    "landscaper: user can use teeth to cut grass"
  3. At any point, if you are currently using your teeth, you can buy a pair of rusty scissors for $5. You can do this once, assuming you have enough money.


    🔴 Commit your work!
    Your commit message should read something like:
    "landscaper: user can buy scissors"
  4. Using the rusty scissors, you can spend the day cutting lawns and make $5. You can do this as much as you want.


    🔴 Commit:
    "Landscaper App: user can use scissors to cut grass"
  5. At any point, if you are currently using rusty scissors, you can buy an old-timey push lawnmower for $25. You can do this once, assuming you have enough money.


    🔴 Commit your work!
    Your commit message should read something like:
    "landscaper: user can buy push lawnmower"
  6. Using the old-timey push lawnmower, you can spend the day cutting lawns and make $50. You can do this as much as you want.


    🔴 Commit your work!
    Your commit message should read something like:
    "landscaper: user can use push lawnmower to cut grass"
  7. At any point, if you are currently using the old-timey push lawnmower, you can buy a fancy battery-powered lawnmower for $250. You can do this once, assuming you have enough money.


    🔴 Commit your work!
    Your commit message should read something like:
    "landscaper: user can buy battery-powered lawnmower"
  8. Using the the fancy battery-powered lawnmower, you can spend the day cutting lawns and make $100. You can do this as much as you want.


    🔴 Commit your work!
    Your commit message should read something like:
    "landscaper: user can use battery-powered lawnmower to cut grass"
  9. At any point, if you are currently using the fancy battery-powered lawnmower, you can hire a team of starving students for $500. You can do this once, assuming you have enough money.


    🔴 Commit your work!
    Your commit message should read something like:
    "landscaper: user can hire a team"
  10. Using the the team of starving students, you can spend the day cutting lawns and make $250. You can do this as much as you want.


    🔴 Commit your work!
    Your commit message should read something like:
    "landscaper: user can use a team to cut grass"
  11. You win the game when you have a team of starving students and $1000. In this situation, send a message to the user telling them, they've won.


    🔴 Commit your work!
    Your commit message should read something like:
    "landscaper: win scenario"

Technical Requirements

  1. Your landscaper game must run on with no syntax errors
  2. If there are errors you can't solve, comment them out and leave a comment above it explaining what is wrong

Hungry for More?

  1. Add the ability to reset the game at any point so that you can play again
  2. Make it so that a user can have multiple tools, and money earned each day is increased appropriately (e.g. 2 scissors, and an old-timey push lawnmower means you earn $60/day )
  3. Once you've implemented multiple tools, make it so you can sell tools for half price

Super duper hungry more?: Landscaper Inspiration

  1. Make your terminal game playable via the DOM!

  2. Some of our students went above and beyond doing exactly that! See below for some examples:

Student One

first screen

buying tools

end

Student Two

first screen

options

more options

buying tools

more options

end

Student Three


Copyright 2018, General Assembly Space. Licensed under CC-BY-NC-SA, 4.0