How to make a sprite appear before text in Pygame?
I'm trying to make a small RPG like game in Pygame and I have a function that prints text slowly (like in a lot of RPGs) and a function that creates a sprite. When I call them they both work however the sprite doesn't appear until after the text is done printing.
I have tried moving the sprite function around but so far, depending on where I put it, it either doesn't change anything or the sprite just doesn't show up at all. I have also tried putting a sprite drawing function inside of the text function but that didn't work either.
I was wondering if there is a way to make it so the sprite appears before the text. Below is the functions for printing the text slow and for creating the sprite.
place_holder = pygame.image.load('place_holder_frog.png') def char_sprite(surface,img,tuple): x,y = tuple surface.blit(img, (x,y)) def display_text_animation(surface, s_color, string, tuple): x,y = tuple text = '' for i in range(len(string)): surface.fill(s_color) text += string[i] text1 = font.render(text, True, WHITE, BLACK) pygame.draw.rect(surface, WHITE, [text_x, text_y,400, 50],1) textRect = text1.get_rect() textRect.center = (x, y) surface.blit(text1, textRect) pygame.display.update() pygame.time.wait(100)
Below is the code where I actually call those functions:
if screen_num == 0: display_text_animation(display_surface, BLACK, "hello world",(text_x + 65, text_y + 25)) char_sprite(display_surface,place_holder, (text_x -100,text_y - 25)) while carryOn: for event in pygame.event.get(): if event.type==pygame.QUIT: carryOn=False elif event.type==pygame.KEYDOWN: if event.key==pygame.K_x: #Pressing the x Key will quit the game carryOn=False pygame.display.flip() clock.tick(60)
Thanks in advanced!! :)