【发布时间】:2021-04-16 15:35:51
【问题描述】:
我一直在尝试和儿子一起制作一款基本的口袋妖怪式游戏。这是一次相当临时的学习体验。
我已经让大多数事情以一种或另一种方式工作,但下面的代码似乎不想合作。应该发生的只是屏幕出现,充满白色,两个“口袋妖怪”被画在上面。照原样,屏幕弹出一秒钟,然后关闭。任何指导将不胜感激!
import pygame
import random
import sys
Boomeroo = pygame.image.load("C:\\Users\\19168\\Desktop\\1stgame\\img\\Boomeroo.png")
Caterpetal = pygame.image.load("C:\\Users\\19168\\Desktop\\1stgame\\img\\Caterpetal.png")
class Pokemon():
def __init__(self, x, y, name):
self.name = name
self.x = x
self.y = y
self.img = None
def draw(self, screen):
screen.blit(self.img, (self.x, self.y))
class Playerpoke(Pokemon):
def __init__(self, x, y, name):
super().__init__(x, y, name)
self.x = 50
self.y = 100
self.img = Caterpetal
self.name = "Caterpetal"
class Wild(Pokemon):
def __init__(self, x, y, name):
super().__init__(x, y, name)
self.x = 280
self.y = 380
self.pic = Boomeroo
self.name = "Boomeroo"
class Game():
def __init__(self):
pygame.init()
self.screen = pygame.display.set_mode((400,400))
self.player = Playerpoke(self,50,100)
self.wild = Wild(self,280,380)
self.clock = pygame.time.Clock()
def redraw():
self.player.draw(self.screen)
self.wild.draw(self.screen)
self.screen.fill((255,255,255))
pygame.display.update()
def main(self):
running = True
while running:
self.redraw()
self.clock.tick(60)
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
pygame.quit()
【问题讨论】:
-
你在哪里调用
main方法? -
问题解决了吗?请阅读What should I do when someone answers my question? 并考虑到accept the answer,您认为对您最有帮助。
标签: python pygame window screen draw