练手的python小游戏

一个python源码的小游戏,照着做了一遍挺有意思的。(虽然里边有些小错误,纠正一下就行了)

import sys

import pygame

import math

#www.iplaypy.com

from pygame.locals import *

pygame.init()

screen = pygame.display.set_mode((600,500))

pygame.display.set_caption("hahsdhf")

myfont = pygame.font.Font(None, 60)

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

while True:

    for evevt in pygame.event.get():

        if evevt.type == QUIT:

            sys.exit()

        elif  evevt.type == KEYUP:

            if evevt.key == pygame.K_ESCAPE:

                sys.exit()

            elif evevt.key == pygame.K_1:

                piece1 = True

            elif evevt.key == pygame.K_2:

                piece2 = True

            elif evevt.key == pygame.K_3:

                piece3 = True

            elif evevt.key == pygame.K_4:

                piece4 = True

    # clean the screen

    screen.fill((0,0,200))

   # draw the four number

    textImage1 = myfont.render("1", True, color)

    screen.blit(textImage1, (x+radius/2-20, y-radius/2))

    textImage2 = myfont.render("2", True, color)

    screen.blit(textImage2, (x-radius/2, y-radius/2))

    textImage3 = myfont.render("3", True, color)

    screen.blit(textImage3, (x-radius/2, y+radius/2-20))

    textImage4 = myfont.render("4", True, color)

    screen.blit(textImage4, (x+radius/2-20, y+radius/2-20))

 

    # should the pieces be down

    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,y), width)

 

    # is the pie finished?

    if piece1 and piece2 and piece3 and piece4:

        color = 0,250,0

 

    pygame.display.update()

转载于:https://my.oschina.net/u/3255407/blog/859670

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值