From c4bce574c150b337484736fd7e86a5ca6ac56837 Mon Sep 17 00:00:00 2001 From: markojozsef Date: Sun, 18 Oct 2026 18:27:27 +0200 Subject: [PATCH] =?UTF-8?q?Sz=C3=B6veg=20sz=C3=A9less=C3=A9g=20sz=C3=A1m?= =?UTF-8?q?=C3=ADt=C3=A1s=20fix?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- doc/AIHasznalat.md | 3 +++ src/text.py | 15 +++++++++++++-- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/doc/AIHasznalat.md b/doc/AIHasznalat.md index f0faa2a..36093d3 100644 --- a/doc/AIHasznalat.md +++ b/doc/AIHasznalat.md @@ -8,6 +8,9 @@ Teljesen AI-generált szakaszokat egy `# !!! CHATGPT !!!` komment jelzi ### main.py * Game +### text.py +* Többsoros szöveg szélessége + ### renderers.py * TextureRenderer * NineSlicesPanel diff --git a/src/text.py b/src/text.py index baced6a..401362e 100644 --- a/src/text.py +++ b/src/text.py @@ -83,9 +83,19 @@ class TextRenderer: for s in self.sprites: s[1] = s[1].move(x, y) +# !!! ChatGPT !!! def render(self, discoloration=(255,255,255)): - offset = -(sum(s[2] for s in self.sprites) // 2) if self.center else 0 - for s in self.sprites: + offsets = [] + sprite_idx = 0 + for line in self.text.split('\n'): + line_len = len(line) + line_sprites = self.sprites[sprite_idx : sprite_idx + line_len] + line_width = sum(s[2] for s in line_sprites) + line_offset = -(line_width // 2) if self.center else 0 + offsets.extend([line_offset] * len(line_sprites)) + sprite_idx += line_len + + for s, offset in zip(self.sprites, offsets): arcade.draw_texture_rect( s[0], s[1].move(offset, 0), @@ -93,6 +103,7 @@ class TextRenderer: color=arcade.types.Color(*discoloration) ) +# !!! ChatGPT vége !!! # a \n display függvénye def newline(self): self.y -= 13