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
-
28:08
Scary Mysteries
19 hours ago5 TERRIFYING Mysteries That Remain UNSOLVED
65.2K6 -
3:19:32
FreshandFit
7 hours agoPop The Balloon Girl Exposed?!
225K64 -
2:03:12
Badlands Media
11 hours agoBaseless Conspiracies Ep. 140: Benghazi Whistleblower Nick Noe - Part 2
89.1K38 -
3:06:47
Laura Loomer
8 hours agoEP131: Zohran Mamdani's Radical Roots EXPOSED
41.8K27 -
2:42:53
TimcastIRL
9 hours agoDOJ Drops MASSIVE Epstein COVER UP, Says There's NO CLIENT LIST | Timcast IRL
242K162 -
54:25
Inverted World Live
8 hours agoThe JFK Assassination and How the CIA Made the Zapruder Film | Ep. 70
35.5K11 -
10:11:25
SpartakusLIVE
15 hours ago$18,000 2v2 WZ Total Frenzy Tournament || #1 Comp Champ is BACK
92.5K4 -
8:11
MattMorseTV
1 day ago $18.18 earnedMacron just SURRENDERED.
81.6K99 -
1:35:03
Glenn Greenwald
11 hours agoTrump DOJ: There's Nothing to the Epstein Story; State Dept: Syria's Al-Qaeda are No Longer "Terrorists;" Trump & Lula Exchange Barbs Over Brazil | SYSTEM UPDATE #482
171K151 -
2:18:39
We Like Shooting
21 hours ago $7.90 earnedWe Like Shooting 618 (Gun Podcast)
48.5K