Assignment 1: “Flappy Bird, The Reward Update”

Objectives

Getting Started

Download the distro code for your first game from https://cdn.cs50.net/games/2019/x/assignments/1/assignment1.zip and unzip assignment1.zip, which should yield a directory called assignment1.

Then, in a terminal window (located in /Applications/Utilities on Mac or by typing cmd in the Windows task bar), move to the directory where you extracted assignment1 (recall that the cd command can change your current directory), and run

cd assignment1

Flapping Your Wings

Your second assignment won’t be quite as easy as last week’s, but don’t worry! The pieces, taken one at a time, are still quite bite-sized and manageable and will mainly be a recap of what we’ve covered thoroughly in lecture leading up to this point :) For a refresher on LÖVE2D, as well as some helpful links for getting started, do just visit the following:

https://love2d.org/

https://love2d.org/wiki/Getting_Started

Be sure to watch Lecture 1 and read through the code so you have a firm understanding of how it works before diving in! In particular, take note of where the logic is for spawning pipes and the parameters that drive both the gap between pipes and the interval at which pipes spawn, as those will be two primary components of this update! You’ll be making some notable changes to the ScoreState, so be sure to read through that as well and get a sense for how images are stored, since you’ll be incorporating your own! Lastly, think about what you need in order to incorporate a pause feature (a simple version of which we saw in lecture!). And if we want to pause the music, we’ll probably need a method to do this that belongs to the audio object LÖVE gives us when we call love.audio.newSource; try browsing the documentation on the LÖVE2D wiki to find out what it is!

Your goals this assignment:

How to Submit

  1. If you haven’t already, install Git and, optionally, install submit50.
  2. Using Git, push your work to https://github.com/me50/USERNAME.git, where USERNAME is your GitHub username, on a branch called games50/assignments/2019/x/1 or, if you’ve installed submit50, execute

    submit50 games50/assignments/2019/x/1
    

    instead.

  3. Record a 1- to 5-minute screencast in which you demonstrate your app’s functionality and/or walk viewers through your code. Upload that video to YouTube (as unlisted or public, but not private) or somewhere else.
  4. Submit this form.