**所以这里要做的是让我的角色在按a时改变图像,但是当我出现错误时呢?链接到完整代码位于**
下 def draw(self, win):
if self.walkCount + 1 >= 10:
self.walkCount = 0
keys = pygame.key.get_pressed()
if keys[pygame.K_a]:
ki_stance = pygame.image.load("image/goku-ki.png")
win.blit("image/goku-ki.png", (self.x, self.y))
if not (self.standing):
if self.left:
win.blit(walkLeft[self.walkCount // 3], (self.x, self.y))
self.walkCount += 1
elif self.right:
win.blit(walkRight[self.walkCount // 3], (self.x, self.y))
self.walkCount += 1
else:
if self.right:
win.blit(walkRight[0], (self.x, self.y))
else:
win.blit(walkLeft[0], (self.x, self.y))
self.hitbox = (self.x + 17, self.y + 11, 29, 52)
这是当我按下一个请您帮助时出现的错误
"C:\Users\Rafael Perez\AppData\Local\Temp\pygame1.py\venv\Python37\Scripts\python.exe" "C:/Users/Rafael Perez/PycharmProjects/game_two/game_compeleted.py"
pygame 1.9.6
Hello from the pygame community. https://www.pygame.org/contribute.html
Traceback (most recent call last):
File "C:/Users/Rafael Perez/PycharmProjects/game_two/game_compeleted.py", line 365, in <module>
redrawGameWindow()
File "C:/Users/Rafael Perez/PycharmProjects/game_two/game_compeleted.py", line 245, in redrawGameWindow
man.draw(win)
File "C:/Users/Rafael Perez/PycharmProjects/game_two/game_compeleted.py", line 46, in draw
win.blit("image/goku-ki.png", (self.x, self.y))
TypeError: argument 1 must be pygame.Surface, not str
您是在钝化图像路径,而不是图像,将win.blit("image/goku-ki.png", (self.x, self.y))
更改为win.blit(ki_stance, (self.x, self.y))