Crossin先生的微信打飞机游戏(1)
来源:互联网 发布:java工程师需要考证吗 编辑:程序博客网 时间:2024/04/29 09:30
前几天在Crossin先生的微信号上看到了这个用Pygame写的微信飞机大战游戏,因为之前有玩过,而且和好友打榜打的厉害,所以有兴趣来用python复现一下。
用pygame的库来制作这个游戏并不难,我也是跟着crossin先生一步步做的,第一节课的内容就是加载游戏背景:
# -*- coding: utf-8 -*-import pygamefrom sys import exitpygame.init()screen = pygame.display.set_mode((400, 800), 0, 32)pygame.display.set_caption("Plane!")background = pygame.image.load('bg.jpg').convert()while True: for event in pygame.event.get(): if event.type == pygame.QUIT: pygame.quit() exit() screen.blit(background, (0, 0)) pygame.display.update()这段代码即可实现加载背景的功能,讲一下其中的一些函数:
- set_mode:用来返回一个Surface对象,这个函数有三个参数,第一个必须为元组,表示对象的分辨率,第二个是标志位,具体代表意思如下表,若不采用特性就设置为0,最后一位表示色深。
标志位功能FULLSCREEN创建一个全屏窗口DOUBLEBUF创建一个“双缓冲”窗口,建议在HWSURFACE或者OPENGL时使用HWSURFACE创建一个硬件加速的窗口,必须和FULLSCREEN同时使用OPENGL创建一个OPENGL渲染的窗口RESIZABLE创建一个可以改变大小的窗口NOFRAME创建一个没有边框的窗口
- convert:用来将图像数据转换为Surface对象,加载完图像后一般都需要使用这个函数,还有一个类似的函数convert_alpha(),与convert()相比,它保留了图片透明部分的通道(在后面的飞机图片中会用到),这样光标才可以是不规则的形状。
- blit:第一个参数为一个Surface对象,第二个为左上角位置。画完以后一定记得用update更新一下,否则画面会一片漆黑。
Crossin先生的第一节课结束了,没毛病。
(这是游戏素材的图片,包括接下来所需要的都在里面了)
http://download.csdn.net/detail/heart_to_heart/9545566
0 0
- Crossin先生的微信打飞机游戏(1)
- Crossin先生的微信打飞机游戏(2)
- Crossin先生的微信打飞机游戏(3)
- Crossin先生的微信打飞机游戏(4)
- Cocos2d仿制的微信打飞机游戏
- 飞机游戏的制作
- 游戏‘微信打飞机’
- 游戏‘微信打飞机’
- 飞机游戏(1)
- Cocos2d-x 3.x学习笔记:猩先生带你打飞机(四)游戏场景:背景与我机的创建、敌机的创建、物理世界构建
- J2ME的小飞机游戏
- 学习飞机游戏的心得
- Cocos2d-x 3.x学习笔记:猩先生带你打飞机(六)游戏结束场景
- JS微信打飞机游戏(二)
- 微信打飞机游戏思路复习
- 【游戏】——微信打飞机
- 游戏‘微信打飞机’ 第一课
- 游戏‘微信打飞机 第一课
- js 定时器
- unity3d HashID转换参数的使用方法
- 第12周项目1-复数类中的运算符重载 (2)
- 九度-1044-Pre-Post[分治和组合数]
- 如何在面试中发现优秀程序员(转)
- Crossin先生的微信打飞机游戏(1)
- linux 开放端口笔记
- mysql点滴
- css的性能优化
- thinkphp下批量修改某个字段
- 抓包破解QQ密码
- unity3d动态加载声音的方法
- HDU 1242 Rescue (BFS+优先队列)
- 单点登录SSO的实现原理