用户:
宇宙中的星系查看:25 回复:6 评论:25 创建时间:2023-08-14T17:19:32

求大佬帮我看一下
xueice1️⃣:路径问题,让图像闪烁不定?🔍
您是否曾经遇到过在使用Pygame加载图像时,出现了报错的问题?其中一个常见的原因是文件路径的错误。在代码中,我们使用 pic = pygame.image.load("CrazySmile.bmp") 来加载图像文件。但是,如果文件路径不正确,Pygame将无法找到图像文件,导致报错。因此,在编写代码时,请确保您提供了正确的文件路径,或者尝试使用绝对路径来加载图像。
2️⃣:格式奇特,让图像弄不出来?💥
另一个可能导致报错的原因是图像文件的格式不受支持。Pygame支持多种图像格式,如BMP、PNG、JPEG等。然而,如果您尝试加载一个不受支持的图像格式,就会导致报错。因此,在使用 pic = pygame.image.load("CrazySmile.bmp") 之前,请确保您的图像文件是Pygame支持的格式,这样才能顺利加载并显示图像。
希望通过这篇推荐帖子,您能够学会解决这个问题。记住,正确的文件路径、支持的图像格式以及正确的库安装都是顺利加载图像的关键。如果您遇到了其他问题或有更多疑问,欢迎在回复我哦,我将尽力为您解答。感谢您的阅读,希望您在Pygame的世界中编程编得开心!🎮✨
点赞0
评论
宇宙中的星系import pygame
import random
pygame.init()
screen = pygame.display.set_mode([800,600])
black = (0,0,0)
pic = pygame.image.load("CrazySmile.bmp")
keep_going = True
colorkey = pic.get_at((0,0))
pic.set_colorkey(colorkey)
mousebutton = False
clock = pygame.time.Clock()
spirte_list = pygame.sprite.Group()
#定义一个类喵iley
class 喵iley(pygame.sprite.Sprite):
pos = (0,0) #设置笑脸的位置
xvel = 1 #设置笑脸的水平移动
yvel = 1 #设置笑脸的垂直移动
scale = 100 #笑脸的缩放比
def __init__(self,pos,xvel,yvel):
pygame.sprite.Sprite.__init__(self)
self.image = pic
self.image = pygame.transform.scale(self,image,(self,scale,self,scale))
self.scale = random.randint(30,100)
self.rect = self.image.get__rect() #得到笑脸的矩形框
self.pos = pos
self.rect.x = pos[0] - self.scale/2 #点击时,让笑脸的中间出现在鼠标位置
self.rect.y = pos[1] - self.scale/2
self.xvel = xvel
self.yvel = yvel
def update(self):
self.rect.x += self.xvel
self.ract.y += self.yvel
if self.rect.x <= 0 or self.rect.x + self.scale > screen.get_width():
self.xvel = -self.xvel
if self.rect.y <= 0 or self.rect.y + self.scale > screen.get_height():
self.yvel = -self.yvel
while keep_going:
for event in pygame.event.get():
if event.type == pygame.QUIT:
keep_going = True
if event.type == pygame.MOUSEBUTTONDOWN:
if pygame.mouse.get_pressed()[0]:
mousebutton = True
else:
if pygame.mouse.pressed()[1]:
pos = pygame.mouse.get_pos()
clicked_喵ileys = [s for s in speite_list if s.rect collidepoint(pos)]
sprite_list.remove(clicked_喵ileys)
if event.type == pygame.MOUSEBUTTONUP:
mousebutton = False
screen.fill(black)
sprite_list.update()
sprite_list.draw(screen)
clock.tick(60)
pygame.display.update()
if mousebutton:
speedx = random.randint(-5,5)
speedy = random.randint(-5,5)
new喵iley = 喵iley(pygame.mouse.get_pos(),speedx,speedy)
speed_list.a喵(new喵iley)
pygame.quit()点赞0
评论
import pygame
import random
WIDTH = 900
HEIGHT = 600
pygame.init()
screen = pygame.display.set_mode((WIDTH, HEIGHT))
pygame.display.set_caption("Game")
clock = pygame.time.Clock()
class Ball(pygame.sprite.Sprite):
def __init__(self):
super().__init__()
self.image = pygame.Surface((50, 50))
self.image.fill((255, 0, 0))
self.rect = self.image.get_rect(center=(WIDTH//2, HEIGHT//2))
self.xvel = random.choice([-5, 5])
self.yvel = random.choice([-5, 5])
def update(self):
self.rect.x += self.xvel
self.rect.y += self.yvel
sprite_list = pygame.sprite.Group()
ball = Ball()
sprite_list.add(ball)
keep_going = True
while keep_going:
for event in pygame.event.get():
if event.type == pygame.QUIT:
keep_going = False
elif event.type == pygame.MOUSEBUTTONDOWN:
keep_going = True
elif event.type == pygame.MOUSEBUTTONUP:
pos = pygame.mouse.get_pos()
for sprite in sprite_list:
if sprite.rect.collidepoint(pos):
sprite_list.remove(sprite)
screen.fill((255, 255, 255))
sprite_list.update()
sprite_list.draw(screen)
pygame.display.flip()
clock.tick(60)
pygame.quit()点赞0
评论