-
Notifications
You must be signed in to change notification settings - Fork 0
/
Character_animation_and_sprits.py
84 lines (71 loc) · 2.15 KB
/
Character_animation_and_sprits.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
import pygame
pygame.init()
screenwidth=480
win= pygame.display.set_mode((screenwidth,screenwidth))
caption=pygame.display.set_caption("Character Animation")
walkRight=[pygame.image.load('R1.png'),pygame.image.load('R2.png'),pygame.image.load('R3.png'),pygame.image.load('R4.png'),pygame.image.load('R5.png'),pygame.image.load('R6.png'),pygame.image.load('R7.png'),pygame.image.load('R8.png'),pygame.image.load('R9.png')]
walkLeft=[pygame.image.load('L1.png'),pygame.image.load('L2.png'),pygame.image.load('L3.png'),pygame.image.load('L4.png'),pygame.image.load('L5.png'),pygame.image.load('L6.png'),pygame.image.load('L7.png'),pygame.image.load('L8.png'),pygame.image.load('L9.png'),]
bg=pygame.image.load('bg.jpg')
char=pygame.image.load('standing.png')
clock=pygame.time.Clock()
x=50
y=415
width=64
height=64
vel=5
isJump=False
jumpCount=10
left=False
right=False
walkCount=0
def redrawGameWindow():
global walkCount
win.blit(bg,(0,0))
if walkCount+1>=27:
walkCount=0
if left:
win.blit(walkLeft[walkCount//3],(x,y))
walkCount+=1
elif right:
win.blit(walkRight[walkCount//3],(x,y))
walkCount+=1
else:
win.blit(char,(x,y))
pygame.display.update()
run=True
while run:
clock.tick(27)
for event in pygame.event.get():
if event.type==pygame.QUIT:
run=False
keys=pygame.key.get_pressed()
if keys[pygame.K_LEFT] and x>vel:
x-=vel
left=True
right=False
elif keys[pygame.K_RIGHT] and x<screenwidth-width-vel:
x+=vel
left=False
right=True
else:
right=False
left=False
walkCount=0
if not(isJump):
if keys[pygame.K_SPACE]:
isJump=True
right=False
left=False
walkCount=0
else:
if jumpCount >= -10:
neg = 1
if jumpCount < 0:
neg = -1
y -= (jumpCount ** 2) * 0.5 * neg
jumpCount-=1
else:
isJump = False
jumpCount = 10
redrawGameWindow()
pygame.quit()