所以最近我进入了OOP,对我来说这是一个非常新的主题,而且我已经制作了一个没有使用对象的乒乓游戏,我正在考虑使用对象来做一个新脚本。问题是,当我运行代码时,它显示一个空屏幕,我不确定我做错了什么(我还是OOP新手)。任何人都可以帮忙吗?
import pygame
class Ball():
def __init__(self, x, y, xmove, ymove, color, size):
self.x = 0
self.y = 0
self.xmove = 0
self.ymove = 0
self.color = (255, 255, 255)
self.size = 10
def draw(self, screen):
pygame.draw.circle(screen, self.color, [self.x, self.y], self.size)
def ballmove(self):
self.x += self.xmove
self.y += self.ymove
done = False
pygame.init()
WIDTH = 640
HEIGHT = 480
clock = pygame.time.Clock()
screen = pygame.display.set_mode((WIDTH, HEIGHT))
ball = Ball(0, 0, 1.5, 1.5, [255, 255, 255], 10)
while done != False:
screen.fill(0)
ball.ballmove()
ball.draw(screen)
pygame.display.update()
答案 0 :(得分:1)
我认为你在循环中使用了错误的条件。它应该是t.belongs_to :user_id
或while done == False:
你的构造函数也是错误的。您给球的参数永远不会设置,因为您使用默认值初始化了所有参数。请改用此构造函数
while done != True: