Chapter 10 Worksheet
1. What's wrong with this code that uses a function to draw a stick figure?
Assume the colors are already defined and the rest of the program is ok.
What is wrong with the code in the function?
def draw_stick_figure(screen, x, y):
# Head
pygame.draw.ellipse(screen, BLACK, [96,83,10,10], 0)
# Legs
pygame.draw.line(screen, BLACK, [100,100], [105,110], 2)
pygame.draw.line(screen, BLACK, [100,100], [95,110], 2)
# Body
pygame.draw.line(screen, RED, [100,100], [100,90], 2)
# Arms
pygame.draw.line(screen, RED, [100,90], [104,100], 2)
pygame.draw.line(screen, RED, [100,90], [96,100], 2)
2. Show how to grab the mouse coordinates, and then
grab just the x coordinate of where the mouse is.
3. Why is it important to keep the event processing loop ``together''
and only have one of them? It is more than organization, there will be subtle
hard-to-detect errors. What are they and why will they happen without the
event processing loop together? (Review ``The Event Processing Loop'' in
Chapter 5 if needed.)
4. When we created a bouncing rectangle, we multiplied the speed times -1 when
the rectangle hit the edge of the screen. Explain why that technique won't work
for moving an object with the keyboard.
5. Why does movement with the keyboard or game controller need to have a
starting x, y location, but the mouse doesn't?
6. What values will a game controller return if it is held all the way down
and to the right?