ich auf dieses Spiel in pygame arbeite und ich brauche ein paar Buchstaben auf dem Bildschirm eine nach der anderen blitten so dass ich den folgenden Code erstellt:pygame Bewegen Blitted Text
def suspicious_print(text, font, font_big, t_w, t_h, fill_colour, rect_colour, text_colour):
pygame.font.init()
font = pygame.font.SysFont(font, font_big)
window_disp.fill(fill_colour)
text_print = ""
for letter in text:
text_print += letter
render = font.render(text_print, 1, text_colour)
render_rect = render.get_rect(center = (t_w, t_h))
pygame.draw.rect(window_disp, rect_colour, render_rect)
window_disp.blit(render, render_rect)
pygame.display.update()
pygame.time.delay(500)
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.font.quit()
pygame.quit()
quit()
Das Problem ist, die Worte bewegen sich zu die linke Seite jedes Mal, wenn der Buchstabe erscheint. Wie kann ich verhindern, dass sich die Wörter bewegen und ruhig bleiben?
Sieht so aus, als ob Sie effektiv den Text "zentrieren", der ihn jedes Mal verschiebt, wenn der gerenderte Text länger wird. Sie müssen "linksbündig", wenn Sie möchten, dass es still bleibt. Die hervorstechende Zeile ist 'render.get_rect (center = (t_w, t_h))'. Vielleicht können Sie das einfach entfernen und es wird funktionieren? –