title: How to make walking characters without spritsheets- Python with Pygame
body: <p>I would like to make my character change sprites when changing which direction it moves without using sprite sheets. The reason why I am not using sprite sheets is because it seems like it may not work for what I am trying to do. </p>
  
  <pre><code>import pygame
  import random
  import time
  
  pygame.init()
  
  health = 100
  food = 10
  
  #Window parameters
  display_width = 800
  display_height = 600
  
  black = (0,0,0)
  white = (255,255,255)
  red = (200,0,0)
  green = (0,200,0)
  blue = (0,0,255)
  titlebrownic = (77, 51, 43)
  titlebrownac = (128, 85, 70)
  
  #Player Sprites
  PlayerStandRight = pygame.image.load('Resources/PlayerStandRight.png')
  PlayerStandLeft = pygame.image.load('Resources/PlayerStandLeft.png')
  PlayerStrikeRight = pygame.image.load('Resources/PlayerStrikeRight.png')
  PlayerStrikeLeft = pygame.image.load('Resources/PlayerStrikeLeft.png')
  PlayerWalkRight1 = pygame.image.load('Resources/PlayerWalkRight1.png')
  PlayerWalkRight2 = pygame.image.load('Resources/PlayerWalkRight2.png')
  PlayerWalkLeft1 = pygame.image.load('Resources/PlayerWalkLeft1.png')
  PlayerWalkLeft2 = pygame.image.load('Resources/PlayerWalkLeft2.png')
  
  #Monster Sprites
  
  #Display Stuff and Clock
  gameDisplay = pygame.display.set_mode((display_width,display_height))
  pygame.display.set_caption('Endless Onslaught')
  clock = pygame.time.Clock()
  
  PlayerSpr = PlayerStandRight
  #Functions Start
  def quitgame():
      pygame.quit
      quit()
  
  def player(x,y):
      gameDisplay.blit(PlayerSpr,(x,y))
  
  def text_objects(text, font):
      textSurface = font.render(text, True, black)
      return textSurface, textSurface.get_rect()
  
  def message_display(text):
      largeText = pygame.font.Font('freesansbold.ttf',115)
      TextSurf, TextRect = text_objects(text, largeText)
      TextRect.center = ((display_width/2), (display_height/2))
      gameDisplay.blit(TextSurf, TextRect)
  
      pygame.display.update()
  
      time.sleep(2)
      gameloop()
  def button(msg, x, y, w, h, ic, ac, action = None):
  
      mouse = pygame.mouse.get_pos(msg, x, y, w, h, ic, ac)
      click = pygame.mouse.get_pressed()
  
      if x + 100 &gt; mouse[0] &gt; x and y + h &gt; mouse[1] &gt; y:
          pygame.draw.rect(gameDisplay, ac, (x,y,w,h))
          if click[0] == 1 and action != None:
              action()
  
      else:
          pygame.draw.rect(gameDisplay, ic, (x,y,w,h))
  
      smallText = pygame.font.Font('freesansbold.ttf', 20)
      textSurf, textRect = text_objects(msg, smallText)
      textRect.center = ((x + (w/2), y + (h/2)))
      gameDisplay.blit(textSurf, textRect)
  
  def game_intro():
  
      intro = True
  
      while intro:
          for event in pygame.event.get():
              print(event)
              if event.type == pygame.QUIT:
                  pygame.quit()
                  quit()
  
          gameDisplay.fill(white)
          largeText = pygame.font.Font('freesansbold.ttf',80)
          TextSurf, TextRect = text_objects("Endless Onslaught", largeText)
          TextRect.center = ((display_width/2),(display_height/2.85))
          gameDisplay.blit(TextSurf, TextRect)
  
          #The start button
          button('Go!', 150,450, 100, 50, titlebrownic, titlebrownac,game_loop)
  
          #The quit button
          button('Quit!', 550, 450, 100, 50, titlebrownic, titlebrownac,quitgame)
  
          pygame.display.update()
          clock.tick(15)
  
  def game_loop():
      PlayerSpr = PlayerStandRight
  
      x = (display_width / 2)
      y = (display_height / 2)
      #When x changes
      x_change = 0
  
      player(display_width/2,display_height/2)
  
      while health &gt; 0:
  
          for event in pygame.event.get():
              if event.type == pygame.QUIT:
                  pygame.quit()
                  quit()
  
              if event.type == pygame.KEYDOWN:
                  if event.key == pygame.K_LEFT:
                      x_change = -5
                      PlayerSpr = PlayerWalkLeft1
                      PlayerSpr = PlayerWalkLeft2
                  if event.key == pygame.K_RIGHT:
                      x_change = 5
  
              if event.type == pygame.KEYUP:
                  if event.key == pygame.K_LEFT or event.key == pygame.K_RIGHT:
                      x_change = 0
  
  
          x += x_change 
          gameDisplay.fill(white)
  
          player(x,y)
  
          pygame.display.update()
          clock.tick(60)
  
  
  
  
  #Functions end     
  game_intro()        
  game_loop()
  pygame.quit
  quit()
  </code></pre>