Pygame: Text Not Appearing
i was following a tutorial and i'm trying to get my text to appear in the screen, here is my code but the text won't appear: from __future__ import division import math import sys
Solution 1:
It looks like you're passing the three RGB values of color
in as three separate values to render
. They should be passed in as a single tuple.
You're also missing some self
s. screen.blit(text, [400,300])
should be self.screen.blit(text, [400,300])
, and you need to make all instances of text
into self.text
if you want it to be accessible in both __init__
and draw
.
from __future__ import division
import math
import sys
import pygame
classMyGame(object):
def__init__(self):
pygame.mixer.init()
pygame.mixer.pre_init(44100, -16, 2, 2048)
pygame.init()
self.width = 800
self.height = 600
self.screen = pygame.display.set_mode((self.width, self.height))
self.bg_color = 0, 0, 0
font = pygame.font.Font(None, 100)
self.text = font.render("text that should appear", True, (238, 58, 140))
self.FPS = 30
self.REFRESH = pygame.USEREVENT+1
pygame.time.set_timer(self.REFRESH, 1000//self.FPS)
defrun(self):
running = Truewhile running:
event = pygame.event.wait()
if event.type == pygame.QUIT:
running = Falseelif event.type == self.REFRESH:
self.draw()
else:
passdefdraw(self):
self.screen.fill(self.bg_color)
self.screen.blit(self.text, [400,300])
pygame.display.flip()
MyGame().run()
pygame.quit()
sys.exit()
Result:
Post a Comment for "Pygame: Text Not Appearing"