16 飞机大战:思路整理、重要代码

思路整理

重要代码

0.重写方法万万检查记得要不要继承父类方法

def __init__(self):
    super().__init__()

  

1.创建游戏时钟:用来设置游戏刷新率

# 新建游戏时钟对象
self.clock = pygame.time.Clock()
... ...
# 设置游戏刷新率
self.clock.tick(60) #60帧/s

  

2.精灵组

# 创建xx精灵
self.xx = Xx() #其中Xx是Xx类
# 创建xx精灵组
self.xx_group = pygame.sprite.Group(xx) #括号中表示添加xx精灵进组

  

3.加载精灵的图片及新建精灵的矩形框

# 初始化精灵图片
self.image = pygame.image.load(image_name) #image_name为图片的路径字符串 self.image属性不能改成其它名字!!!
# 初始化精灵矩形框
self.rect = self.image.get_rect()

  

4. 创建游戏窗口

# 游戏窗口矩形框常量
SCREEN.RECT = pygame.Rect(x,y,width.height)
# 创建游戏窗口对象
self.screen = pygame.display.set_mode(SCREEN.RECT.size) #或者直接写分辨率元组也行

  

5.刷新游戏显示

# 游戏循环中最重要也是最后一步:刷新游戏屏幕显示
pygame.display.update()

  

6.退出游戏指令

# 当监听器监听到退出游戏的事件,执行退出游戏指令
exit()

  

7.背景循环滚动

#bg1,bg2两张图,在Backgroud类中的init设置参数is_sec=false
self.bg2 = Background(True)
... ...
if is_sec:
    self.rect.bottom = 0
#在Background的upgdate方法中
if self.rect.y>屏幕最大y值
    self.rect.bottom = 0

  

原文地址:https://www.cnblogs.com/scopicat/p/11746162.html

时间: 2024-08-24 05:24:04

16 飞机大战:思路整理、重要代码的相关文章

javascript飞机大战-----0010完整版代码

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <style> *{margin:0;padding:0;} .game{ position:relative; width: 320px; height: 568px; margin: 50px auto; b

[知了堂学习笔记]_纯JS制作《飞机大战》游戏_第1讲(实现思路与游戏界面的实现)

整体效果展示: 一.实现思路 如图,这是我完成该项目的一个逻辑图,也是一个功能模块完成的顺序图. 游戏界面的完成 英雄飞机对象实现,在实现发射子弹方法过程中,又引出了子弹对象并实现.在此时,英雄飞机能进行基本操作了. 敌机对象的实现,并且初步完成了boos出现(30s自动出现).然后又引出了许多方法的处理,如英雄子弹击中敌机和boos,英雄与敌机相撞等等.并一一解决. 随后又设置了一些游戏的参数,如血量,关卡数,等级,积分,必杀,道具对象等等. 最后又完成了一些辅助功能,暂停游戏,继续游戏,退出

飞机大战原生代码版

飞机大战需要背景图,飞机,子弹,敌机 下面写的是css代码实现子弹的运动 for (var i = 0; i < this.objB.arr.length; i++) { var newArr = this.objB.arr[i].split('|');//[id|top|left] var eleB = document.getElementById(newArr[0]); newArr[1] = parseInt(newArr[1]) - 1; //将上一个的newArr1减1并赋值 //

500行代码,教你用python写个微信飞机大战

这几天在重温微信小游戏的飞机大战,玩着玩着就在思考人生了,这飞机大战怎么就可以做的那么好,操作简单,简单上手. 帮助蹲厕族.YP族.饭圈女孩在无聊之余可以有一样东西让他们振作起来!让他们的左手 / 右手有节奏有韵律的朝着同一个方向来回移动起来! 这是史诗级的发明,是浓墨重彩的一笔,是-- 在一阵抽搐后,我结束了游戏,瞬时觉得一切都索然无味,正在我进入贤者模式时,突然想到,如果我可以让更多人已不同的方式体会到这种美轮美奂的感觉岂不美哉? 所以我打开电脑,创建了一个 plan_game.py-- 先

web版canvas做飞机大战游戏 总结

唠唠:两天的时间跟着做了个飞机大战的游戏,感觉做游戏挺好的.说是用html5做,发现全都是js.说js里一切皆为对象,写的最多的还是函数,都是函数调用.对这两天的代码做个总结,希望路过的大神指点一下,我对这个游戏的思路,可改进优化的代码. 先说一下游戏的基本内容: 打飞机(不要想歪了),有鼠标控制移动英雄机,子弹自动射击:敌机从上而下,有三种敌机: 先说下HTML代码(主要就是这一行): <canvas id="canFly" width="480" heig

Java飞机大战源代码

刚学不久java,做了一个飞机大战的小小小小游戏,现在把这个思路总结以及代码分享出来.大佬别吐槽(emmmmmm .....开发环境:jdk1.7 开发工具:eclipese PlanelJPanel.java 1 package project02; 2 3 import java.awt.BasicStroke; 4 import java.awt.Color; 5 import java.awt.Cursor; 6 import java.awt.Font; 7 import java.a

android:如何用一天时间,写出“飞机大战”这样的游戏!(无框架-SurfaceView绘制)

序言作为一个android开发者,时常想开发一个小游戏娱乐一下大家,今天就说说,我是怎么样一天写出一个简单的"飞机大战"的.体验地址:http://www.wandoujia.com/apps/edu.njupt.zhb.planegame游戏分析玩过"飞机大战"游戏的都知道,飞机大战中的主要"角色"有:1.玩家飞机2.敌方飞机3.玩家飞机发送的子弹4.敌方Boss飞机发送的子弹我们需要控制的有:1.绘制屏幕内的角色2.控制角色的逻辑,比如:敌方

基于Cocos2d-x-1.0.1的飞机大战游戏开发实例(中)

接<基于Cocos2d-x-1.0.1的飞机大战游戏开发实例(上)> 三.代码分析 1.界面初始化 1 bool PlaneWarGame::init() 2 { 3 bool bRet = false; 4 do 5 { 6 CC_BREAK_IF(! CCLayer::init()); 7 8 _size = CCDirector::sharedDirector()->getWinSize(); 9 10 // 设置触摸可用 11 this->setIsTouchEnabled

android:怎样用一天时间,写出“飞机大战”这种游戏!(无框架-SurfaceView绘制)

序言作为一个android开发人员,时常想开发一个小游戏娱乐一下大家,今天就说说,我是怎么样一天写出一个简单的"飞机大战"的. 体验地址:http://www.wandoujia.com/apps/edu.njupt.zhb.planegame 源码:https://github.com/nuptboyzhb/newplanegame 游戏分析 玩过"飞机大战"游戏的都知道,飞机大战中的主要"角色"有:1.玩家飞机2.敌方飞机3.玩家飞机发送的子