Premium Only Content

Pygame tutorial | Learn to code with python | Animations and Tile mapping
In this tutorial, we will be walking through some animation ideas and functions that can help you better understand how to place things on the screen with Pygame in Python.
Got an error? Compare your code below. Angle brackets aren't allow in description so I will replace them with "less than" and "greater than"
main.py code:
import math
import pygame
win_width = 800
win_height = 600
FPS = 60
tilesize = 32
speed = 32
def get_sprite(sheet, x, y, w, h):
sprite = pygame.Surface([w, h])
sprite.blit(sheet, (0, 0), (x, y, w, h))
sprite.set_colorkey('white')
return sprite
animation_list = [
[0, 0],
[32, 0],
[64, 0],
[96, 0],
[128, 0],
[0, 32],
[32, 32],
[64, 32],
[96, 32],
[128, 32],
]
def main():
pygame.init()
screen = pygame.display.set_mode((win_width, win_height), pygame.SCALED)
pygame.display.set_caption('Animation')
background = pygame.Surface(screen.get_size())
background = background.convert()
background.fill((100, 100, 100))
screen.blit(background, (0, 0))
clock = pygame.time.Clock()
spritesheet = pygame.image.load('numbers.png').convert()
animation_loop = 0
pic_x = 0
pic_y = 0
running = True
while running:
clock.tick(FPS)
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_UP:
pic_y -= speed
elif event.key == pygame.K_DOWN:
pic_y += speed
elif event.key == pygame.K_LEFT:
pic_x -= speed
elif event.key == pygame.K_RIGHT:
pic_x += speed
if animation_loop "less than" 9:
pic = get_sprite(spritesheet, animation_list[math.floor(animation_loop)][0], animation_list[math.floor(animation_loop)][1], tilesize, tilesize)
animation_loop += 1
else:
pic = get_sprite(spritesheet, animation_list[math.floor(animation_loop)][0], animation_list[math.floor(animation_loop)][1], tilesize, tilesize)
animation_loop = 0
max_x = win_width / tilesize
max_y = win_height / tilesize
if pic_y "less than" win_height:
if pic_x "less than" win_width:
pic_x += speed
else:
pic_y += speed
pic_x = 0
else:
pic_x = 0
pic_y = 0
# screen.blit(background, (0, 0))
screen.blit(pic, (pic_x, pic_y))
pygame.display.flip()
if __name__ == '__main__':
main()
#python #pygame #animation
-
LIVE
JULIE GREEN MINISTRIES
1 hour agoLIVE WITH JULIE
18,646 watching -
LIVE
The Pete Santilli Show
36 minutes agoOur Memorial & Prayer Vigil For Charlie Kirk - September 15, 2025
457 watching -
UPCOMING
Welcome to the Rebellion Podcast
20 hours agoWhere Do We Go From Here? - WTTR Podcast Live 9/15
250 -
UPCOMING
The Chris Salcedo Show
15 hours agoFALLOUT: Charlie Kirk's Assassination
1.25K1 -
LIVE
The Bubba Army
2 days agoCharlie Kirk's Shooter, Had a Trans BF? - Bubba the Love Sponge® Show | 9/15/25
2,962 watching -
30:31
DeVory Darkins
14 hours ago $4.73 earnedCNN forced to admit the shocking truth about shooter as Fetterman drops bomb on Democrats
6.86K61 -
20:54
Professor Nez
15 hours ago🚨BREAKING: Shooter’s Own Words in Charlie Kirk Case Revealed
1.79K3 -
16:48
itsSeanDaniel
15 hours agoGenius Republican Defends Charlie Kirk and CALLS OUT The Radical Left
2641 -
9:09
Freedom Frontline
15 hours agoFox News Just Showed The Video Biden Never Wanted Seen
4.13K13 -
0:27
historyofboxing
17 hours ago $0.13 earnedThe Cuban Machine… and Deadliest KO Phenom Right Now – David Morrell Jr
1.48K