Python 如何在pygame中将图像附加到rect?
我需要帮助在pygame中将图像附加到矩形。。我正在尝试用python制作一个蛇游戏(你知道,那个吃苹果长lol的游戏),我想把我老师的脸贴在蛇的头上 我已经尝试定义一个变量来导入图像,然后将矩形重命名为该图像,但似乎没有任何效果Python 如何在pygame中将图像附加到rect?,python,image,pygame,Python,Image,Pygame,我需要帮助在pygame中将图像附加到矩形。。我正在尝试用python制作一个蛇游戏(你知道,那个吃苹果长lol的游戏),我想把我老师的脸贴在蛇的头上 我已经尝试定义一个变量来导入图像,然后将矩形重命名为该图像,但似乎没有任何效果 snakeFace = pygame.image.load("Morrison.jpg").convert_alpha() rect = snakeFace.get_rect() screenWidth = 500 X=50 y= 50 height = 20 vel
snakeFace = pygame.image.load("Morrison.jpg").convert_alpha()
rect = snakeFace.get_rect()
screenWidth = 500
X=50
y= 50
height = 20
vel = 20
run = True
lastKey = None
while run:
pygame.time.delay(10) #1/2 milisecond delay
for event in pygame.event.get():
if event.type == pygame.QUIT:
run = False #this controls the "X" button
if event.type == pygame.KEYDOWN:
lastKey = event.key
keys = pygame.key.get_pressed()
if lastKey == pygame.K_LEFT and x > vel:
x-=vel
if lastKey == pygame.K_RIGHT and x< screenWidth - width -vel:
x+=vel
if lastKey == pygame.K_DOWN and y < screenWidth - height - vel:
y+= vel
if lastKey == pygame.K_UP and y > vel:
y-=vel
win.fill((0,0,0))
pygame.draw.rect(win, (255, 0, 0), (x, y, width, height))
pygame.display.update()
snakeFace=pygame.image.load(“Morrison.jpg”).convert_alpha()
rect=snakeFace.get_rect()
屏幕宽度=500
X=50
y=50
高度=20
水平=20
运行=真
lastKey=None
运行时:
pygame.时间延迟(10)#1/2毫秒延迟
对于pygame.event.get()中的事件:
如果event.type==pygame.QUIT:
run=False#此选项控制“X”按钮
如果event.type==pygame.KEYDOWN:
lastKey=event.key
keys=pygame.key.get_pressed()
如果lastKey==pygame.K_左且x>vel:
x-=水平
如果lastKey==pygame.K_RIGHT且xvel:
y-=水平
胜利填充((0,0,0))
pygame.draw.rect(赢,(255,0,0),(x,y,宽,高))
pygame.display.update()
我希望在屏幕上按下某个键后,屏幕上会出现一个有我老师脸的正方形,但它只是一个普通的红色正方形。这是一个红色正方形,因为代码正在绘制一个红色正方形:
pygame.draw.rect(win, (255, 0, 0), (x, y, width, height))
改为绘制蛇形面
位图:
win.blit(snakeFace, (x, y))
这是一个红方块,因为代码正在绘制一个红方块:
pygame.draw.rect(win, (255, 0, 0), (x, y, width, height))
改为绘制蛇形面
位图:
win.blit(snakeFace, (x, y))
下面是我用来向rect对象添加图像的完整示例代码
import pygame
vel = 5
pygame.init()
screen = pygame.display.set_mode((800,600))
pygame.display.set_caption('captions')
icon = pygame.image.load('test123.jpg')
pygame.display.set_icon(icon)
playerimg = pygame.image.load('test123.jpg')
playerx = 370
playery = 480
def player():
screen.blit(playerimg,(playerx,playery))
running = True
while running:
screen.fill((0, 0, 0))
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
keys = pygame.key.get_pressed()
if keys[pygame.K_a] and playerx > vel:
playerx += vel
player()
pygame.display.update()
下面是我用来向rect对象添加图像的完整示例代码
import pygame
vel = 5
pygame.init()
screen = pygame.display.set_mode((800,600))
pygame.display.set_caption('captions')
icon = pygame.image.load('test123.jpg')
pygame.display.set_icon(icon)
playerimg = pygame.image.load('test123.jpg')
playerx = 370
playery = 480
def player():
screen.blit(playerimg,(playerx,playery))
running = True
while running:
screen.fill((0, 0, 0))
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
keys = pygame.key.get_pressed()
if keys[pygame.K_a] and playerx > vel:
playerx += vel
player()
pygame.display.update()