期望:
1.球体接触到框体后反弹
2.设置速度按键,按下后改变球体速度、颜色状态
具体实现:
1 import pygame 2 from pygame.locals import * 3 import sys, random 4 5 6 class Circle(object): 7 # 设置Circle类属性 8 def __init__(self): 9 self.vel_x = 110 self.vel_y = 111 self.radius = 2012 self.pos_x, self.pos_y = random.randint(0, 255), random.randint(0, 255)13 self.width = 014 self.color = 0, 0, 015 16 # 球体颜色速度改变方法17 def change_circle(self, number):18 self.color = random.randint(0, 255), random.randint(0, 255), random.randint(0, 255)19 # 防止球体速度方向发生改变20 if self.vel_x < 0:21 self.vel_x = -number22 else:23 self.vel_x = number24 if self.vel_y 580 or self.pos_x 480 or self.pos_y < 20:36 self.vel_y = -self.vel_y37 self.pos_x += self.vel_x38 self.pos_y += self.vel_y39 pos = self.pos_x, self.pos_y40 ygame.draw.circle(screen, self.color, pos, self.radius, self.width)41 42 pygame.init()43 screen = pygame.display.set_mode((600, 500))44 # Circle实例45 circle1 = Circle()46 47 while True:48 for event in pygame.event.get():49 if event.type == QUIT:50 sys.exit()51 elif event.type == KEYUP:52 if event.key == pygame.K_1:53 circle1.change_circle(1)54 elif event.key == pygame.K_2:55 circle1.change_circle(2)56 elif event.key == pygame.K_3:57 circle1.change_circle(3)58 elif event.key == pygame.K_4:59 circle1.change_circle(4)60 61 screen.fill((0, 0, 100))62 63 circle1.circle_run()64 65 pygame.display.update()
登录后复制
以上就是分享一个pygame 弹力球的实现实例的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2268874.html