21 lines
717 B
Python
21 lines
717 B
Python
# code
|
|
import pygame
|
|
|
|
class Button:
|
|
def __init__(self, up_image_path, over_image_path, position):
|
|
self.up_image = pygame.image.load(up_image_path)
|
|
self.over_image = pygame.image.load(over_image_path)
|
|
self.image = self.up_image
|
|
self.rect = self.image.get_rect(topleft=position)
|
|
self.mask = pygame.mask.from_surface(self.image)
|
|
|
|
def is_hovered(self, mouse_pos):
|
|
return self.rect.collidepoint(mouse_pos) and self.mask.get_at((mouse_pos[0] - self.rect.x, mouse_pos[1] - self.rect.y))
|
|
|
|
def update(self, mouse_pos):
|
|
if self.is_hovered(mouse_pos):
|
|
self.image = self.over_image
|
|
else:
|
|
self.image = self.up_image
|
|
|
|
pygame.init() |