python编程从入门到实践p208页-p213页-汇总程序

alien_invasion.py

import sys
import pygame
from settings import Settings
from ship import Ship
def run_game():
	#初始化游戏
	pygame.init()#这个是pygame的初始化
	pygame.display.set_caption("飞机大战")
	ai_settings = Settings()
	#创建屏幕对象
	screen = pygame.display.set_mode([ai_settings.screen_width,ai_settings.screen_height])
	#创建一艘飞船
	ship = Ship(screen)
	#游戏的主循环
	while True:#注意True首字母大写
		#监听键盘鼠标事件
		for event in pygame.event.get():#键盘鼠标事件
			if event.type == pygame.QUIT:#注意 == 两个等号
				sys.exit()
		#用背景色填充屏幕
		screen.fill(ai_settings.bg_color)	
		#将飞船的图像绘制到屏幕上
		ship.blitme()
		#在while里面一直刷新屏幕,这一条程序放到最下面
		pygame.display.flip()

run_game()

settings.py

class Settings():
	"""存储设置的类"""
	def __init__(self):
		"""初始化游戏设置"""
		#屏幕的设置
		self.screen_width = 1200
		self.screen_height = 800
		self.bg_color = (230,230,230)

ship.py

import pygame
class Ship():
	def __init__(self,screen):
		self.screen = screen
		#加载飞船图像
		self.image = pygame.image.load("images/ship.bmp")
		#获取飞船的属性rect
		self.rect = self.image.get_rect()

		self.screen_rect = screen.get_rect()
		#让游戏元素居中,设置相应rect对象的center,centerx,centery.
		self.rect.centerx = self.screen_rect.centerx
		#让游戏元素与边缘对齐,top,bottom,left,right.
		self.rect.bottom = self.screen_rect.bottom
	def blitme(self):
		#将飞船的图像绘制到屏幕上
		self.screen.blit(self.image,self.rect)

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值