xiaoing.com©

开花即结果 提问即答案

用pygame做一个生存类的游戏
原始问题:

用pygame做一个生存类的游戏

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
用pygame做一个生存类的游戏
https://www.xiaoing.com/zhidao/11220.html
AI / 模型DeepSeek
时间 / DATEApril 16, 2023, 12:22 PM
语言zh-CN
IP / 区域湖南 常德