This commit is contained in:
2026-02-26 20:22:35 +01:00
parent 95fa854857
commit 59e74df0a9

50
main.py
View File

@@ -19,22 +19,22 @@ WORD_BORDER_COLOR = "#fffcf2"
WORD_SHADOW_COLOR = "#000000" WORD_SHADOW_COLOR = "#000000"
# Drawing constants # Drawing constants
SCALING_FACTOR = 1 SCALING_FACTOR = 1.5
SCREEN_WIDTH = SCALING_FACTOR*1280 SCREEN_WIDTH = int(SCALING_FACTOR*1280)
SCREEN_HEIGHT = SCALING_FACTOR*720 SCREEN_HEIGHT = int(SCALING_FACTOR*720)
PAGE_MARGIN = SCALING_FACTOR*8 PAGE_MARGIN = int(SCALING_FACTOR*8)
PAGE_BORDER_RADIUS = SCALING_FACTOR*20 PAGE_BORDER_RADIUS = int(SCALING_FACTOR*20)
PAGE_BORDER_WIDTH = SCALING_FACTOR*5 PAGE_BORDER_WIDTH = int(SCALING_FACTOR*5)
WORD_WIDTH = SCALING_FACTOR*108 WORD_WIDTH = int(SCALING_FACTOR*108)
WORD_HEIGHT = SCALING_FACTOR*22 WORD_HEIGHT = int(SCALING_FACTOR*22)
WORD_MARGIN = SCALING_FACTOR*5 WORD_MARGIN = int(SCALING_FACTOR*5)
WORD_BORDER_RADIUS = SCALING_FACTOR*15 WORD_BORDER_RADIUS = int(SCALING_FACTOR*15)
WORD_BORDER_WIDTH = SCALING_FACTOR*2 WORD_BORDER_WIDTH = int(SCALING_FACTOR*2)
WORD_FONT_SIZE = SCALING_FACTOR*11 WORD_FONT_SIZE = int(SCALING_FACTOR*11)
WORD_SHADOW_SIZE = SCALING_FACTOR*2 WORD_SHADOW_SIZE = int(SCALING_FACTOR*2)
GRID_WIDTH = 6 GRID_WIDTH = 6
GRID_HEIGHT = 25 GRID_HEIGHT = 25
@@ -42,28 +42,28 @@ GRID_HEIGHT = 25
WORD_PAGE_WIDTH = PAGE_BORDER_WIDTH*2+(WORD_WIDTH+WORD_MARGIN)*GRID_WIDTH+WORD_MARGIN WORD_PAGE_WIDTH = PAGE_BORDER_WIDTH*2+(WORD_WIDTH+WORD_MARGIN)*GRID_WIDTH+WORD_MARGIN
WORD_PAGE_HEIGHT = SCREEN_HEIGHT-PAGE_MARGIN*2 WORD_PAGE_HEIGHT = SCREEN_HEIGHT-PAGE_MARGIN*2
TAB_WIDTH = SCALING_FACTOR*30 TAB_WIDTH = int(SCALING_FACTOR*30)
TAB_HEIGHT = SCALING_FACTOR*40 TAB_HEIGHT = int(SCALING_FACTOR*40)
TAB_MARGIN = SCALING_FACTOR*8 TAB_MARGIN = int(SCALING_FACTOR*8)
TAB_POS = Vector2(WORD_PAGE_WIDTH+PAGE_MARGIN*2,PAGE_MARGIN) TAB_POS = Vector2(WORD_PAGE_WIDTH+PAGE_MARGIN*2,PAGE_MARGIN)
TEXT_PAGE_POS = Vector2(WORD_PAGE_WIDTH+PAGE_MARGIN*2,TAB_HEIGHT+PAGE_MARGIN*2) TEXT_PAGE_POS = Vector2(WORD_PAGE_WIDTH+PAGE_MARGIN*2,TAB_HEIGHT+PAGE_MARGIN*2)
TEXT_PAGE_WIDTH = SCREEN_WIDTH-(WORD_PAGE_WIDTH+PAGE_MARGIN*3) TEXT_PAGE_WIDTH = SCREEN_WIDTH-(WORD_PAGE_WIDTH+PAGE_MARGIN*3)
TEXT_PAGE_HEIGHT = SCREEN_HEIGHT-(TAB_HEIGHT+PAGE_MARGIN*3) TEXT_PAGE_HEIGHT = SCREEN_HEIGHT-(TAB_HEIGHT+PAGE_MARGIN*3)
TEXT_MARGIN = SCALING_FACTOR*10 TEXT_MARGIN = int(SCALING_FACTOR*10)
TEXT_TOP_MARGIN = SCALING_FACTOR*17 TEXT_TOP_MARGIN = int(SCALING_FACTOR*17)
TEXT_WIDTH = TEXT_PAGE_WIDTH - PAGE_BORDER_WIDTH*2 - TEXT_MARGIN*2 TEXT_WIDTH = TEXT_PAGE_WIDTH - PAGE_BORDER_WIDTH*2 - TEXT_MARGIN*2
TEXT_HEIGHT = TEXT_PAGE_HEIGHT - PAGE_BORDER_WIDTH*2 - TEXT_MARGIN*2 TEXT_HEIGHT = TEXT_PAGE_HEIGHT - PAGE_BORDER_WIDTH*2 - TEXT_MARGIN*2
WORD_SLOT_SPACING = " "*16 WORD_SLOT_SPACING = " "*16
WORD_SLOT_NUDGING = SCALING_FACTOR*4 WORD_SLOT_NUDGING = int(SCALING_FACTOR*5.5)
WORD_SLOT_NUDGE_DOWN = -SCALING_FACTOR WORD_SLOT_NUDGE_DOWN = -SCALING_FACTOR
SLANT = SCALING_FACTOR*20 SLANT = int(SCALING_FACTOR*20)
INDICATOR_SIZE = SCALING_FACTOR*20 INDICATOR_SIZE = int(SCALING_FACTOR*20)
INDICATOR_BORDER = SCALING_FACTOR*5 INDICATOR_BORDER = int(SCALING_FACTOR*5)
INDICATOR_MARGIN = SCALING_FACTOR*15 INDICATOR_MARGIN = int(SCALING_FACTOR*15)
INDICATOR_POS = Vector2(TEXT_PAGE_WIDTH-(INDICATOR_SIZE+INDICATOR_MARGIN),TEXT_PAGE_HEIGHT-(INDICATOR_SIZE+INDICATOR_MARGIN)) INDICATOR_POS = Vector2(TEXT_PAGE_WIDTH-(INDICATOR_SIZE+INDICATOR_MARGIN),TEXT_PAGE_HEIGHT-(INDICATOR_SIZE+INDICATOR_MARGIN))
class WordColor(Enum): class WordColor(Enum):
@@ -241,8 +241,8 @@ def draw_word_slot(word_slot: WordSlot, screen: pygame.surface.Surface):
pygame.Rect( pygame.Rect(
pos.x + WORD_BORDER_WIDTH + WORD_WIDTH//4, pos.x + WORD_BORDER_WIDTH + WORD_WIDTH//4,
pos.y + WORD_BORDER_WIDTH, pos.y + WORD_BORDER_WIDTH,
(WORD_WIDTH*3)//4 - WORD_BORDER_WIDTH*2, (WORD_WIDTH*3)//4 - WORD_BORDER_WIDTH*2+1,
WORD_HEIGHT - WORD_BORDER_WIDTH*2 WORD_HEIGHT - WORD_BORDER_WIDTH*2+1
), ),
border_radius=WORD_BORDER_RADIUS border_radius=WORD_BORDER_RADIUS
) )