Как сделать TextBox / Status Box в Pygame для RPG? - PullRequest
3 голосов
/ 19 июня 2011

Мне нужно создать TextBox / MessageBox / StatusBox и т. Д. Для моего RPG.Я создал класс Text Box, но он не работает.Он стирает поверхность, но не отображает текст.

КОД:

class TextBox(pygame.sprite.Sprite):
    def __init__(self):
        pygame.sprite.Sprite.__init__(self)
        self.initFont()
        self.initImage()
        self.initGroup()
        self.setText(['a','b'])

    def initFont(self):
        pygame.font.init()
        self.font = pygame.font.Font(None,3)

    def initImage(self):
        self.image = pygame.Surface((200,80))
        self.image.fill((255,255,255))
        self.rect = self.image.get_rect()
        self.rect.center = (0,0)        

    def setText(self,text):
        tmp = pygame.display.get_surface()
        x_pos = self.rect.left+5
        y_pos = self.rect.top+5

        for t in text:
            x = self.font.render(t,False,(0,0,0))
            tmp.blit(x,(x_pos,y_pos))
            x_pos += 10

            if (x_pos > self.image.get_width()-5):
                x_pos = self.rect.left+5
                y_pos += 10

    def initGroup(self):
        self.group = pygame.sprite.GroupSingle()
        self.group.add(self)

1 Ответ

3 голосов
/ 21 июня 2011

Умм Извините.Не берите в голову.Я сам нашел проблему.Я написал:

 self.rect.center = (0,0)

, где это должно было быть

 self.rect.top = 0 ; self.rect.left = 0

Спасибо, в любом случае.: D

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...