Pygame常用方法
'''
import pygame # 初始化pygame库,让计算机硬件准备
pygame.init() # ----------窗口相关操作-----------
# 创建窗口
window = pygame.display.set_mode([窗口宽,窗口高]) # 设置窗口标题
pygame.display.set_caption("窗口标题") # 加载资源图片,返回图片对象
image = pygame.image.load("res/game.ico")
# 设置窗口图标
pygame.display.set_icon(image) # 指定坐标,将图片绘制到窗口
window.blit(image, (0, 0)) # ----------图像相关操作-----------
# 加载图片文件,返回图片对象
image = pygame.image.load("图片路径") # 获得图片矩形对象 -> Rect(x, y, width, height)
# 默认情况下左上角的坐标是 (0, 0)
rect = image.get_rect(centerx=x, centery=y) # 在原位置基础上,移动指定的偏移量 (x, y 增加)
rect.move_ip(num1, num2) # 判断两个矩形是否相交,相交返回True,否则返回False
flag = pygame.Rect.colliderect(rect1, rect2) # 将图片对象按指定宽高缩放,返回新的图片对象
trans_image = pygame.transform.scale(image, (WINDOWWIDTH, WINDOWHEIGHT)) # ----------事件相关操作-----------
# 常见事件类型:
# QUIT 关闭窗口
# KEYDOWN 键盘按键
# 获得当前所有持续按键 bools_tuple # 获得所有事件的列表
event_list = pygame.event.get() for event in event_list:
# 1. 鼠标点击关闭窗口事件
if event.type == pygame.QUIT:
print("关闭了窗口")
sys.exit() # 2. 键盘按下事件
if event.type == pygame.KEYDOWN: # 判断用户按下的键是否是a键
if event.key == pygame.K_a:
print("按了 a ") if event.key == pygame.k_UP:
print("按了 方向键上") # 3. 获得当前键盘所有按键的状态(按下,没有按下),返回bool元组
pressed_keys = pygame.key.get_pressed()
(0, 0, 0, 0, 1, 0, 0, 0, 0) if pressed_keys[pygame.K_w] or pressed_keys[pygame.K_UP]:
print("按了 w 键,或者 方向键上") # ----------音效相关操作-----------
# 加载背景音乐
pygame.mixer.music.load("./res/bg2.ogg")
# 循环播放背景音乐
pygame.mixer.music.play(-1)
# 停止背景音乐
pygame.mixer.music.stop() # 加载音效
boom_sound = pygame.mixer.Sound("./res/baozha.ogg")
# 播放音效
boom_sound.play() boom_sound.stop() 三基色:Red Green Blue 0 ~ 255 # -------- 文字显示操作 # 设置字体和大小
font = pygame.font.SysFont('SimHei', 42) # render(text(文本内容), antialias(抗锯齿), color(RGB)),返回文字对象
textobj = font.render("飞机大战", 1, (255, 255, 255)) # 设置文字矩形对象位置
textrect = textobj.get_rect(centerx=300, centery=300) # 在指定位置绘制指定文字对象
window.blit(textobj, textrect)
'''
Pygame常用方法的更多相关文章
- pygame编组(精灵组)Group中的常用方法介绍
说明: 1.以下所用的Group均为Group类的对象实例 2.Group类是对AbstractGroup类的继承 sprite.py文档中描述如下: class Group(AbstractGrou ...
- Python游戏编程(Pygame)
安装Pygame pip install pygame C:\Users> pip install pygame Collecting pygame Downloading https://fi ...
- pygame征途:(一)图片移动反弹
题目大意: 就是弄一张图片在背景画布上移动,然后碰到边界就图片翻转并且反向移动 基本思路: 需要pygame常用的一些常用的函数,然后基本就是在背景画布上blit一张图片,然后移动就是先全刷成背景画布 ...
- 前端开发:Javascript中的数组,常用方法解析
前端开发:Javascript中的数组,常用方法解析 前言 Array是Javascript构成的一个重要的部分,它可以用来存储字符串.对象.函数.Number,它是非常强大的.因此深入了解Array ...
- Jquery元素选取、常用方法
一:常用的选择器:(李昌辉) 基本选择器 $("#myDiv") //匹配唯一的具有此id值的元素 $("div") //匹配指定名称的所有元素 $(" ...
- python浅谈正则的常用方法
python浅谈正则的常用方法覆盖范围70%以上 上一次很多朋友写文字屏蔽说到要用正则表达,其实不是我不想用(我正则用得不是很多,看过我之前爬虫的都知道,我直接用BeautifulSoup的网页标签去 ...
- C# Webbrowser 常用方法及多线程调用
设置控件的值 /// <summary> /// 根据ID,NAME双重判断并设置值 /// </summary> /// <param name="tagNa ...
- list,tuple,dict,set常用方法
Python中list,tuple,dict,set常用方法 collections模块提供的其它有用扩展类型 from collections import Counter from collect ...
- 记录yii2-imagine几个常用方法
记录yii2-imagine几个常用方法: //压缩 Image::thumbnail('@webroot/img/test-image.jpg', 120, 120)->save(Yii::g ...
随机推荐
- mixer: sql词法分析器设计
介绍 mixer希望在proxy这层就提供自定义路由,sql黑名单,防止sql注入攻击等功能,而这些的基石就在于将用户发上来的sql语句进行解析.也就是我最头大的词法分析和语法分析. 到现在为止,我只 ...
- JAVA集合类——难得的总结
本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/41346969 以下资料是在学习中总结出来的,希望对你有所帮 ...
- How to Enable Trace or Debug for APIs executed as SQL Script Outside of the Applications ?
In this Document Goal Solution 1: How do you enable trace for an API when executed from a SQL ...
- 服务端技术进阶(一)web项目的部署(发布)流程
web项目的部署(发布)流程 在myeclipse下新建web工程abc.系统设置默认如下: 项目保存位置:workspace目录\abc.Source文件夹:src,保存所有的java类文件(.ja ...
- hive发杂数据结构的使用,struct,array,map
一个简单介绍http://jimi68.iteye.com/blog/980573 一般的复杂介绍:http://songpo-ath-taobao-com.iteye.com/blog/140513 ...
- Material Design之CoordinatorLayout+AppBarLayout实现上滑隐藏ToolBar
ok,今天继续更新Material Design系列!!! 废话不说,先看看效果图吧: 好了,现在来讲讲上图是怎么实现的吧!讲之前先讲讲几个控件: CoordinatorLayout 该控件也是De ...
- 【翻译】在Ext JS应用程序中使用自定义图标
原文:Using Custom Icons in Your Ext JS App 作者:Lee BoonstraLee is a technical trainer at Sencha. She's ...
- /dev/null 2>&1的意思(可以直接参考shell重定向那篇,/dev/null是空设备)
路还长 别太狂 以后指不定谁辉煌 2>&1 和 &> 的解释 Linux的IO输入输出有三类 Standard Input 代码 0 Standard Output 代码 ...
- 机器人操作系统ROS(indigo)与三维仿真软件V-Rep(3.2.1)通信接口使用笔记
关键字:ROS(indigo),V-Rep(3.2.1), vrep_ros_bridge(lagadic). vrep_ros_bridge提供了V-Rep和ROS之间的通信接口,可以实现使用ROS ...
- 双系统或三系统:Grub Rescue修复方法
我是在装三系统的时候(1.WIN 7 ,2.Ubuntu 12.04 ,3.CentOS 6.4 ),中间步骤出错,造成引导区覆盖,grub乱掉了. 症状: 开机显示:GRUB loading err ...