AI创作问答(高级版)
import pygame
import random
# 初始化pygame环境
pygame.init()
# 设置游戏窗口大小以及标题
screen = pygame.display.set_mode((800, 600)) # 窗口大小为 800*600
pygame.display.set_caption("Red Alert 2") # 标题为 Red Alert 2
# 加载游戏背景图片
background = pygame.image.load('background_img.jpg')
# 加载游戏角色图片
player_img = pygame.image.load('player_img.png')
# 获得外部图片的宽度和高度
playerWidth = player_img.get_width() # 角色宽度 playerHeight = player_img.get_height() # 角色高度
# 更新画布,显示背景图片 screen.blit(background, (0, 0))
# 用于存储敌人位置的列表 enemyPosList = []
class Enemy:
def __init__(self): self._xPos = random .randint(0, 800 - 20) self._yPos = 0 self._width = 20 self._height=20 self._speed=random .randint(1, 10)
def moveEnemy(self): global enemyPosList if len(enemyPosList) < 5: enemyPosList .append([self ._xPos ,self ._yPos]) if len (enemyPosList )> 0: for pos in enemyPosList : pos[1] += self ._speed if pos[1] > 600 : enemyPosList .remove (pos) screen .blit (player _img ,pos ) else : pass return True else : return False def getXpos (self ): return self ._x Pos def getYpos (self ): return self ._y Pos def getWidth (self ): return self ._width def getHeight (self ): return sel f ._height def setXpos (se lf , x): se lf ._x Pos= x de f setYpos (se lf , y): se lf ._y Pos= y de f setWidth (se lf , w): se lf ._width= w de f setHeight (se lf , h): se lf _height= h