python从入门到实践12

编程入门 行业动态 更新时间:2024-10-12 05:44:20

python从<a href=https://www.elefans.com/category/jswz/34/1770026.html style=入门到实践12"/>

python从入门到实践12

12-1 蓝色天空:创建一个背景为蓝色的Pygame窗口

import sys
import pygamedef run_game():# 初始化游戏,并创建一个屏幕对象pygame.init()screen = pygame.display.set_mode((1200, 600))pygame.display.set_caption("this is a test!")#背景颜色bg_color = (0, 0, 255)# 开始游戏主循环while True:# 监听鼠标和事件for event in pygame.event.get():if event.type == pygame.QUIT:sys.exit()# 每次循环重绘屏幕screen.fill(bg_color)# 让最近绘制的屏幕可见pygame.display.flip()run_game()

注:在写监听的时候,判断语句漏写了.type导致程序无法退出。要注意是event.type == pygame.QUIT

12-2 游戏角色:找一副你喜欢的游戏角色位图图像或将一副图像转换为位图。创建一个类,将该角色绘制到屏幕中央,并将该图像的背景色设置为屏幕背景色。

import sys
import pygame
from classjianji import Jianjidef run_game():# 初始化游戏,并创建一个屏幕对象pygame.init()#设置窗口大小screen = pygame.display.set_mode((1200, 600))#设置窗口标题pygame.display.set_caption("this is a test!")#背景颜色:天蓝色bg_color = (87, 250, 255)# 创建游戏角色jianji = Jianji(screen)# 开始游戏主循环while True:# 监听鼠标和事件for event in pygame.event.get():if event.type == pygame.QUIT:sys.exit()# 每次循环重绘屏幕screen.fill(bg_color)#将游戏人物绘画出来jianji.blitme()# 让最近绘制的屏幕可见pygame.display.flip()run_game()
# Jianji.py
import pygameclass Jianji():def __init__(self, screen):"""初始化游戏人物并设置其位置"""self.screen = screen# 加载图像并获取其外接矩形self.image = pygame.image.load('untitled.bmp')self.rect = self.image.get_rect()self.screen_rect = self.screen.get_rect()# 将每个游戏人物放在屏幕中央self.rect.centerx = self.screen_rect.centerxself.rect.centery = self.screen_rect.centerydef blitme(self):"""在指定位置绘制游戏人物"""self.screen.blit(self.image, self.rect)

这里要理解surface对象,图像数据都将转化为surface对象。blit的参数有两个,一个是图片即self.image是一个surface对象,另一个是要画的位置即self.rect

.get_rect()获得一个对象的rect,以便于设置其坐标位置

更多推荐

python从入门到实践12

本文发布于:2024-02-19 13:14:06,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1763981.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:入门   python

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!