Program Arcade GamesWith Python And Pygame
Create a graphics based program. You can start a new program, or continue with a prior lab.
This is the checklist for completing this lab:
- Make sure this program is created in its own directory. If you are starting from the template I have at BitBucket, then make sure you start in the “Lab 12 - Bitmapped Graphics and User Control” folder and put everything in there.
- Incorporate at least one function that draws an item on the screen. The function should take position data that specifies where to draw the item. (Note: You will also need to pass a reference to the “screen.” Another note, this is difficult to do with images loaded from a file. I recommend doing this only with regular drawing commands.)
- Add the ability to control an item via mouse, keyboard, or game controller.
- Include some kind of bit-mapped graphics. Do not include bit-mapped graphics as part of your “draw with a function.” That won't work well until we've learned a bit more.
- Include sound. You could make a sound when the user clicks the mouse, hits a key, moves to a certain location, etc. If the sound is problematic, try using the program Audacity to load the sound, and then export it as a .ogg file.
- Make sure all files are added to version control. It is easy to forget to add the images and sound files. Double check the website to make certain the files are added. If instead you need to send the program to someone, the entire directory must be zipped. See Figure 32.2. You do NOT need to do this if you are turning in your program using BitBucket or some other version control system.
- Stop. Did you double check that all the files needed are uploaded?
- Triple-check that your image and sound files are uploaded or zipped up. Even with a double-check about 25% of students seem to miss the files. Ask if you aren't sure.
Sounds and bitmaps you can use:
It is ok to use code from prior labs, such as Lab 5.
You are not logged in. Log in here and track your progress.
English version by Paul Vincent Craven
Spanish version by Antonio Rodríguez Verdugo
Russian version by Vladimir Slav
Turkish version by Güray Yildirim
Portuguese version by Armando Marques Sobrinho and Tati Carvalho
Dutch version by Frank Waegeman
Hungarian version by Nagy Attila
Finnish version by Jouko Järvenpää
French version by Franco Rossi
Chinese version by Kai Lin