Pygame 学习笔记(4)
来源:互联网 发布:淘宝神笔卖家推荐 编辑:程序博客网 时间:2024/06/05 09:06
壁球游戏加入鼠标控制示例
import pygameimport syspygame.init()icon = pygame.image.load('ball.png')pygame.display.set_icon(icon)vInfo = pygame.display.Info()size = width, height = (600, 400)# size = width, height = 600, 400speed = [1, 1]BLACK = 0, 0, 0screen = pygame.display.set_mode((600, 400), pygame.RESIZABLE)# screen = pygame.display.set_mode((600, 400), pygame.NOFRAME)# screen = pygame.display.set_mode(size)pygame.display.set_caption('PyGame 游戏之旅')ball = pygame.image.load('ball.png')ballrect = ball.get_rect()fps = 300 # frames per secondfclock = pygame.time.Clock()still = Falsewhile True: for e in pygame.event.get(): if e.type == pygame.QUIT: sys.exit() elif e.type == pygame.KEYDOWN: if e.key == pygame.K_LEFT: speed[0] = speed[0] if speed[0] == 0 else (abs(speed[0]) - 1) * int(speed[0]/abs(speed[0])) elif e.key == pygame.K_RIGHT: speed[0] = speed[0] + 1 if speed[0] > 0 else speed[0] - 1 elif e.key == pygame.K_DOWN: speed[1] = speed[1] if speed[1] == 0 else (abs(speed[1]) - 1) * int(speed[1] / abs(speed[1])) elif e.key == pygame.K_UP: speed[1] = speed[1] + 1 if speed[1] > 0 else speed[1] - 1 elif e.key == pygame.K_ESCAPE: sys.exit() elif e.type == pygame.VIDEORESIZE: size = width, height = e.size[0], e.size[1] screen = pygame.display.set_mode(size, pygame.RESIZABLE) elif e.type == pygame.MOUSEBUTTONDOWN: if e.button == 1: still = True elif e.type == pygame.MOUSEBUTTONUP: still = False if e.button == 1: ballrect = ballrect.move(e.pos[0] - ballrect.left, e.pos[1] - ballrect.top) elif e.type == pygame.MOUSEMOTION: if e.buttons[0] == 1: ballrect = ballrect.move(e.pos[0] - ballrect.left, e.pos[1] - ballrect.top) if pygame.display.get_active() and not still: ballrect = ballrect.move(speed[0], speed[1]) if ballrect.left < 0 or ballrect.right > width: speed[0] = - speed[0] if ballrect.right > width and ballrect.right + speed[0] > ballrect.right: speed[0] = -speed[0] if ballrect.top < 0 or ballrect.bottom > height: speed[1] = - speed[1] if ballrect.bottom > height and ballrect.bottom + speed[1] > ballrect.bottom: speed[1] = - speed[1] screen.fill(BLACK) screen.blit(ball, ballrect) pygame.display.update() fclock.tick(fps)
小球资源
阅读全文
0 0
- Pygame 学习笔记(4)
- pygame学习笔记1
- Pygame学习笔记 (1)
- Pygame 学习笔记(2)
- Pygame 学习笔记(3)
- pygame学习笔记(4)——声音
- pygame学习:pygame简介
- python学习笔记--pygame的安装
- pygame学习
- Pygame学习(1)------安装pygame
- pygame入门笔记
- python3 pygame学习(3):pygame.Surface
- pygame学习过程
- Pygame学习0x00
- python3 pygame学习(4):文字的使用
- 学习Python, 学习Pygame(一)
- 学习Python,学习Pygame(二)
- 学习Python,学习Pygame(三)
- 第十六周java作业
- numpy.asarray: 转输入为数组
- android之带右侧字母(拼音)索引的列表
- 高精度单目结构光三维重建
- Chrome 插件下载、安装、加载正在开发的扩展程序和打包扩展程序
- Pygame 学习笔记(4)
- linux里面的$是什么意思?
- 【CC2640R2F】香瓜CC2640R2F之连接参数
- 欢迎使用CSDN-markdown编辑器
- dataTable columnDefs
- 使用electron-builder来打包electron应用
- libcurl增加HTTP header 和 POST之后获取返回数据
- Selenuim+Python之元素定位总结及实例说明
- ContOS 7.2安装