利用Python开发飞机大战,你也可以成为游戏编写者

创建游戏是趣学语言的理想方式,看别人玩你编写的游戏会让你很有满足感,而编写简单的游戏有助于你明白专业级游戏是怎么编写出来的。我们可以动手输入并运行代码,以明白各个代码对整个游戏所做的贡献,并尝试不同的值和设置,这样才能对如何该进游戏的交互性有更深入的认识。那么接下来我们就来利用Python开发飞机大战游戏。

游戏《飞机大战》将包含很多不同的文件,因此首先在你的系统中新建一个文件夹,并将其命名为PlaneFight,请务必将这个项目的所有文件都存在这个文件夹中,这样相关的import语句才能正确地工作。

规划项目

在游戏飞机大战中,你可以控制着一架最初出现在屏幕底部中央的飞机。玩家可以使用箭头键左右移动飞机,还可使用空格键进行射击。游戏开始时,一群外星人出现在天空中,他们在屏幕中向下移动,玩家的任务是射杀这些外星人,只要有外星人撞到了玩家的飞机或到达了屏幕底部,游戏结束。

安装Pygame

使用这个模块能够快速地创建游戏。

检测安装

进入Python环境,执行:

开始游戏项目

首先创建一个空的Pygame窗口,以供后面用来绘制游戏元素,比如飞机和外星人,我们还将让这个游戏响应用户输入,设置背景色以及加载飞机图像。

创建Pygame窗口以及响应用户输入

首先,我们创建一个空的Pygame窗口,使用Pygam编写游戏的基本结构如下:

设置背景色

Pygame默认创建一个黑色屏幕,下面来将背景设置为另一种颜色:

创建游戏设置类

每次给游戏添加新功能时,通常也将引入一些新设置。下面来编写一个名为settings的模块,其中包含一个名为Settings的类,用于将所有设置存储在一个地方,以免在代码中到处添加设置,这样,我们就能传递一个设置对象,而不是众多不同的设置。另外,这让函数调用更简单,且在项目增大时修改游戏的外观更容易:要修改游戏,只需修改settings.py中的一些值,而无需查找散布在文件中的不同设置。

添加飞机图像

在游戏中几乎可以使用任何类型的图像文件,但在使用位图(.bmp)文件最为简单,因为Pygame方法blit()绘制它。当选择用于表示飞机的图像后,需要将其显示到屏幕上。我们将创建一个名为plane的模块,其中包括Plane类,它负责管理飞机的大部分行为。

重构代码

在大型项目中,经常需要在添加新代码前重构既有代码。重构旨在简化既有代码的结构,使其更容易扩展。我们将创建一个名为gamefunctions的新模块,它将存储大量让游戏《飞机大战》运行的函数,通过创建模块gamefunctions,可避免planefight.py太长,并使其逻辑更容易理解。

函数check_events()

首先把管理事件的代码移到一个名为check_events()的函数中,以简化planefight.py并隔离事件管理循坏。

今天的分享就到这里啦,还有一个重要的事情哦,那就是——

小编微信 tzios2018 ,这里有Python零基础视频教学 爬虫项目视频  等各种Python技术视频哦  都是免费分享哦 欢迎大家加小编 一起学习进步~

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明AI阅读 16,037评论 3 119
  • 若きの哲学者ミシェル・フーコーは薄毛に悩んでいる。ある日、彼は坊主頭にしようと決意した。にもかかわらず、フーコーは...
    风满楼1992阅读 4,357评论 0 2
  • 在我能预估到的未来几年,我在感情方面能收获到的,无非是越来越多的失望。 等爸妈退休生活能安定下来,我想赚点钱出去,...
    jinshaojian阅读 715评论 0 0
  • 或许我终于发现了我自己的缺点,大学四年确实消磨了我全部的骄傲,我开始变成一个不自信甚至自卑的人。我现在需要做的,就...
    情海无涯阅读 1,735评论 0 0
  • 一不小心 一不小心, 脑海清晰地幻化出一个你 却愈加模糊 一不小心, 走神的思绪就飘到你那...
    艺素阅读 1,768评论 0 0