This commit is contained in:
2025-05-04 22:52:43 +02:00
parent a73ac825a9
commit 98fc54e7b9
6 changed files with 34 additions and 2 deletions

BIN
Slight Delay.mp3 Normal file

Binary file not shown.

BIN
click.wav Normal file

Binary file not shown.

BIN
correct.wav Normal file

Binary file not shown.

BIN
incorrect.wav Normal file

Binary file not shown.

36
main.py
View File

@@ -135,7 +135,8 @@ def draw_page(page: Page, screen: pygame.surface.Surface, font: pygame.font.Font
page.position.y + PAGE_BORDER_WIDTH,
page.size.x - PAGE_BORDER_WIDTH*2,
page.size.y - PAGE_BORDER_WIDTH*2
)
),
border_radius=PAGE_BORDER_RADIUS//2
)
pygame.draw.rect(
@@ -183,6 +184,26 @@ def draw_page(page: Page, screen: pygame.surface.Surface, font: pygame.font.Font
INDICATOR_SIZE-INDICATOR_BORDER
)
def play_sound(page: Page):
click = pygame.mixer.Sound("click.wav")
click.set_volume(0.8)
click.play()
if page.slots != []:
status = page.solved()
if status == SolvedState.Correct:
sound = pygame.mixer.Sound("correct.wav")
elif status == SolvedState.AlmostCorrect:
sound = pygame.mixer.Sound("incorrect.wav")
elif status == SolvedState.Wrong:
sound = pygame.mixer.Sound("incorrect.wav")
else:
return
sound.play()
def draw_word_slot(word_slot: WordSlot, screen: pygame.surface.Surface):
pos = word_slot.page.position+word_slot.position
@@ -324,6 +345,12 @@ def draw_tab(n: int, screen: pygame.surface.Surface, font: pygame.font.Font, sel
def main(data: dict):
pygame.init()
pygame.font.init()
# music
pygame.mixer.music.load("Slight Delay.mp3")
pygame.mixer.music.set_volume(0.1)
pygame.mixer.music.play(-1)
font = pygame.font.SysFont("Comic Code",WORD_FONT_SIZE,True)
print(font.size(WORD_SLOT_SPACING))
screen = pygame.display.set_mode((1280, 720),pygame.RESIZABLE)
@@ -505,6 +532,8 @@ def main(data: dict):
held_word = None
play_sound(slot.page)
while running:
for event in pygame.event.get():
@@ -512,6 +541,9 @@ def main(data: dict):
click_slot()
i = focused()
if isinstance(i,int):
page_sound = pygame.mixer.Sound("page.wav")
page_sound.set_volume(0.7)
page_sound.play()
pages[visible_page].visible = False
visible_page = i
pages[visible_page].visible = True
@@ -529,7 +561,7 @@ def main(data: dict):
scaled_xy = (x/ratio_x,y/ratio_y)
held_word.position = Vector2(scaled_xy) - Vector2(WORD_WIDTH//2,WORD_HEIGHT//2)
# RENDER YOUR GAME HERE
# render pages
for p in pages:
if not p.visible:
continue

BIN
page.wav Normal file

Binary file not shown.