Example #1
0
class Player(pygame.sprite.Sprite):
    def __init__(self):
        pygame.sprite.Sprite.__init__(self)
        self.image, self.rect = Utility.load_image_file('player.png')
        grect = Utility.screen.get_rect()
        self.rect.x = (grect.width - self.rect.width) / 2
        self.rect.y = (grect.height - self.rect.height)
        self.axis = Axis()
        self.speed = 5
        self.speed_slow = 2

    def update(self, event, time):
        self.axis.update(event)
        v = self.axis.get_vector()
        if v[0] != 0 and v[1] != 0:
            v = (v[0] * 0.707, v[1] * 0.707)

        """Move player character """

        if self.axis.get_shift():
            print('shift')
            self.rect.move_ip((v[0] * self.speed_slow, v[1] * self.speed_slow))
        else:
            self.rect.move_ip((v[0] * self.speed, v[1] * self.speed))
        #self.rect.move_ip(1,1)
        grect = Utility.screen.get_rect()
        self.rect.x = max(0, min(self.rect.x, grect.width - self.rect.width))
        self.rect.y = max(0, min(self.rect.y, grect.height - self.rect.height))