Как мне получить мой счет, чтобы обновить мой текст в понг?

Я пытаюсь получить свой текст, чтобы обновить мой счет, когда мой мяч падает на стену за веслом или когда он попадает на весло. Как бы я пошел по этому поводу?

import pygame
import ball
import paddle


class Points:
    def __init__(self,x,y):

    self.x=x
    self.y=y

    self.color= (255,0,0)
    font_height = 25
    self.Font = pygame.font.SysFont("calibri",font_height)
    self.count = 0
    self.comp = 0
    self.player = 0
    self.point = 0
    self.ball = ball.Ball(x, y)

    self.string = ("player: " + str(self.player)+"   computer: " + str(self.comp))



def draw(self,surface):

    text_object = self.Font.render(self.string, False, self.color)
    text_rect = text_object.get_rect()
    text_rect.center = (self.x, self.y)
    surface.blit(text_object, text_rect)



def score(self, paddle):
    if self.ball.x - self.ball.x2 <= 0:
        self.count += 1
        self.comp = self.count


    elif (self.ball.x < paddle.getX() + paddle.getW()
          and self.ball.y > paddle.getY()
          and self.ball.y <= paddle.getY() + paddle.getH()):
        self.point +=1
        self.player = self.point

У меня есть все мои члены данных за пределами моей функции счета, но я чувствую, что это где я блещу поверхность

1 ответ

Решение

Вы должны переместить self.string = ... линия от вашего __init__() метод в ваш draw() метод.

Другие вопросы по тегам