import pygame class Button(): def __init__(self, x, y, image, scale): width = image.get_width() height = image.get_height() self.image = pygame.transform.scale(image, (int(width * scale), int(height * scale))) self.rect = self.image.get_rect() self.rect.topleft = (x, y) self.clicked = False def draw(self, surface): action = False pos = pygame.mouse.get_pos() #Mouse over and clicked conditions if self.rect.collidepoint(pos): if pygame.mouse.get_pressed()[0] == 1 and self.clicked == False: self.clicked = True action = True if pygame.mouse.get_pressed()[0] == 0: self.clicked = False #Draw button on screen surface.blit(self.image, (self.rect.x, self.rect.y)) if self.clicked == False: surface.blit(self.image, (self.rect.x, self.rect.y)) else: surface.blit(self.image, (self.rect.x, self.rect.y + 5)) return action