Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import game
- import pygame
- from pygame.locals import *
- from constants import *
- class Player():
- def __init__(self, x, y, resources):
- self.x = x
- self.y = y
- self.base_y = y
- self.frame = 0
- self.direction = True
- self.right = False
- self.left = False
- self.up = False
- self.idle = resources.player[0]
- self.walking = resources.player[1]
- self.speed_x = 2
- self.speed_y = 0
- self.idle_time = 0
- def update(self):
- # X movement
- if self.right:
- self.x += self.speed_x
- if self.left:
- self.x -= self.speed_x
- # Y movement
- if self.y < self.base_y:
- self.speed_y += 1
- else:
- self.speed_y = 0
- if self.up:
- self.speed_y = -10
- self.y += self.speed_y
- def update_events(self, events):
- if K_RIGHT in events:
- if not self.right:
- self.direction = True
- self.frame = 0
- self.right = events[K_RIGHT]
- if K_LEFT in events:
- if not self.left:
- self.direction = False
- self.frame = 0
- self.left = events[K_LEFT]
- print 'Write your code left key'
- if K_UP in events:
- self.up = events[K_UP]
- def draw(self):
- if self.direction:
- anim_index = 0
- else:
- anim_index = 1
- if self.right or self.left:
- sprite = self.walking[anim_index][self.frame]
- self.frame = (self.frame + 1) % len(self.walking[anim_index])
- else:
- sprite = self.idle[anim_index][self.frame]
- self.idle_time += 1
- if self.idle_time == 20:
- self.frame = (self.frame + 1) % len(self.idle[anim_index])
- self.idle_time = 0
- xoffset = -sprite.get_width()/2
- yoffset = -sprite.get_height()
- game.draw(sprite, (self.x + xoffset, self.y + yoffset))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement