qcode
  • 创作工场专业版,一问多答!更智能、更完整、更原创
  • 这是一个超强内容创作平台,它会写文章、做设计、绘图、敲代码,有问必答!
🔥点击使用-免登录深度版🔥

用pygame做一个生存类的游戏

时间2023-04-16 12:22:40 提问来自 湖南省常德市 的网友 分类创作 浏览300
import pygame import random # 屏幕的大小和背景色 SCREEN_RECT = pygame.Rect(0, 0, 480, 700) # 矩形对象,参数分别代表左上角X Y坐标,宽度和高度 BG_COLOR = (0, 0, 0) # RGB三原色:黑色背景 class GameSprite(pygame.sprite.Sprite): # 继承精灵类 def __init__(self, image_name, speed=1): # 初始化方法 super().__init__() # 调用父类的初始化方法 self.image = pygame.image.load(image_name) # 加载图片 self.rect = self.image.get_rect() # 获得图片的位置信息(矩形对象) self.speed = speed # 速度参数 def update(self): # 更新位置信息方法 self.rect.y += self.speed # y坐标加上速度即可得到新的位置信息 class Background(GameSprite): # 背景图片的子类:从上向下运动的背景图片 def __init__(self, is_alt=False): # 是否使用交替图片来实例化对象。如不传入参数就是False(默认值)。True表明使用交替图片。 super().__init__('images/background1-1-2-3-4-5-6-7-8-9-.jpg') # 背景要显示在最下面所以y=0开始 # 第一张背景图片来实例化对象。super()函数表明使用GameSprite中的初始化方法来实例化Background这个子类。传入参数是要显式的背景图片名字。 if is_alt: # 如传入True代表使用交互背景来实例化对象 self .image = pygame . image . load('images/background2 - 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9-.jpg') else: pass self . rect . y = SCREEN _ RECT . height if not is _ alt : pass else: pass super ( ) . __ init _ _ ( ) def update ( ) : super ( ) . update ( ) if not SCREEN _ RECT . contain s (self . rect ): self . rect . y = 0 + SCREEN _ RECT

不满意?免费深度重写!

免责声明:
以上内容除特别注明外均来源于网友提问,创作工场回答,未经许可,严谨转载。

上一篇 周德睿长什么样 下一篇 建设教育强国的青年力 量