# -*- coding: UTF-8 -*- import pygame import os import sys import time import abc from PIL import Image #从模式RGB转换为“L”模式时按照下面的公式转换的L = R*299/1000 + G*578/1000 + B*114/1000 #https://blog.csdn.net/misaka_s/article/details/76668511 class BaseImage(object): """在背景屏幕打印一个图片打基础""" def __init__(self,bgScreen): try: self.imageName = self.imageName except AttributeError as e: #error:has not attribute self.imageName = "./images/bomb-2.gif" #打开图像文件。不想检测错误了 self.img = Image.open(self.imageName) #获取图片的尺寸 self.imgWidth = self.img.width self.imgHeight = self.img.height #设置要显示内容打窗口 self.bScreen = bgScreen self.imageScreen = pygame.image.load(self.imageName).convert() #显示图片 def display(self): self.bScreen.screen.blit(self.imageScreen,(self.x,self.y)) #向左 def moveLeft(self,speed=10): if self.x > (speed - 10 -self.imgWidth/2): self.x -= speed else: self.x = spped - 10 - self.imgWidth/2 #向右 def moveRight(self,speed=10): if self.x < (self.bScreen.x - speed - self.imgWidth/2): self.x += speed else: self.x = self.bScreen.x - speed - self.imgWidth/2 #向上 def moveUp(self,speed=10): if self.y > speed: self.y -= speed else: self.y = 0 #向下 def moveDown(self,speed=10): if self.y < (self.bScreen.y - self.imgHeight - speed): self.y += speed else: self.y = self.bScreen.y - self.imgHeight