1. 程式人生 > >【原創】python遊戲pygame學習筆記(2)--pie遊戲--還要DEBUG

【原創】python遊戲pygame學習筆記(2)--pie遊戲--還要DEBUG

# -*- coding:utf-8 -*-
import pygame
import sys
from pygame.locals import *
import math


color=200,80,60
width=4
x=300
y=250
radius=200
position=x-radius,y-radius,radius*2,radius*2
piece1=False
piece2=False
piece3=False
piece4=False


pygame.init()

screen=pygame.display.set_mode((600,500))
caption=pygame.display.set_caption("draw a circle")
myfont=pygame.font.Font(None,60)

while True:
    for event in pygame.event.get():
        if event.type == QUIT:            #if event in (QUIT,KEYDOWN):
            sys.exit()
        elif event.type == KEYUP:
            if event.key==pygame.K_ESCAPE:
                sys.exit()
            elif event.key==pygame.K_1:
                piece1=True
            elif event.key==pygame.K_2:
                piece2=True
            elif event.key==pygame.K_3:
                piece3=True
            elif event.key==pygame.K_4:
                piece4=True    

    #clear the screen                
    screen.fill((0,0,200))

    
    #draw the four numbers
    
    
    textImg1=myfont.render("1",True,color)
    screen.blit(textImg1,(x+radius/2-20,y+radius/2))
    textImg2=myfont.render("2",True,color)
    screen.blit(textImg1,(x+radius/2,y+radius/2))
    textImg3=myfont.render("3",True,color)
    screen.blit(textImg1,(x+radius/2,y+radius/2-20))
    textImg4=myfont.render("4",True,color)
    screen.blit(textImg1,(x+radius/2-20,y+radius/2-20))    
    
    
    
    
    #should the pieces be drawn?
    if piece1:
        start_angle=math.radians(0)
        end_angle=math.radians(90)
        pygame.draw.arc(screen,color,position,start_angle,end_angle,width)
        pygame.draw.line(screen,color,(x,y),(x,y-radius),width)
        pygame.draw.line(screen,color,(x,y),(x+radius,y),width)    
    if piece2:
        start_angle=math.radians(90)
        end_angle=math.radians(180)
        pygame.draw.arc(screen,color,position,start_angle,end_angle,width)
        pygame.draw.line(screen,color,(x,y),(x,y-radius),width)
        pygame.draw.line(screen,color,(x,y),(x-radius,y),width)        
    if piece3:
        start_angle=math.radians(180)
        end_angle=math.radians(270)
        pygame.draw.arc(screen,color,position,start_angle,end_angle,width)
        pygame.draw.line(screen,color,(x,y),(x-radius,y),width)
        pygame.draw.line(screen,color,(x,y),(x,y+radius),width)        
    if piece4:
        start_angle=math.radians(270)
        end_angle=math.radians(360)
        pygame.draw.arc(screen,color,position,start_angle,end_angle,width)
        pygame.draw.line(screen,color,(x,y),(x,y+radius),width)
        pygame.draw.line(screen,color,(x,y),(x+radius),width)            
    
    
    #is the pie finished?
    if piece1 and piece2 and piece3 and piece4:
        color=0,255,0
    
    pygame.display.update

    
    
    
    
    
    color=255,255,0
    position =300,250
    radius=100
    width=1
    pygame.draw.circle(screen,color,position,radius,width)
    pygame.display.update()