Rendu des dialogues

This commit is contained in:
Yannis 2024-01-06 14:30:32 +01:00
parent 879e6e8c0d
commit 70d1a136ce
Signed by: yannis
SSH key fingerprint: SHA256:Bz8K8QiTYUudf8MlthTM9MCLfgiYf/U1md3V9g9Wo14
4 changed files with 11 additions and 8 deletions

View file

@ -1,4 +1,5 @@
{ {
"test": ["test1111", "test2", "test très long permettant de tester le retour à la ligne dans le renderer du jeu dans la fonction qui rend les dialogues et il faut éviter d'en faire des si long car ça pourrait dépacer en base de l'écran ! Bonne journée !"], "test": ["test1111", "test2", "test très long permettant de tester le retour à la ligne dans le renderer du jeu dans la fonction qui rend les dialogues et il faut éviter d'en faire des si long car ça pourrait dépacer en base de l'écran ! Bonne journée !"],
"test2": ["salut", "aurevoir"] "test2": ["salut", "aurevoir"],
"test3": ["test très long permettant de tester le retour à la ligne dans le renderer du jeu dans la fonction qui rend les dialogues et il faut éviter d'en faire des si long car ça pourrait dépacer en base de l'écran ! Bonne journée !"]
} }

View file

@ -10,7 +10,7 @@ class DialogsManager:
self.reading_dialog = False self.reading_dialog = False
self.current_dialogue_letter_id = 0 self.current_dialogue_letter_id = 0
self.LETTER_WRITTING_DELAY = 0.5 self.LETTER_WRITTING_DELAY = 0.01
self.letter_timer = 0 self.letter_timer = 0
def next_dialog(self): def next_dialog(self):
@ -27,8 +27,6 @@ class DialogsManager:
self.current_dialogs = self.dialogs[name] self.current_dialogs = self.dialogs[name]
self.current_dialog_id = 0 self.current_dialog_id = 0
print(self.current_dialogs)
self.reading_dialog = True self.reading_dialog = True
def get_current_dialog_sentence(self, progressive=True) -> str: def get_current_dialog_sentence(self, progressive=True) -> str:
@ -54,4 +52,3 @@ class DialogsManager:
if self.current_dialogue_letter_id > len(self.current_dialogs[self.current_dialog_id]): if self.current_dialogue_letter_id > len(self.current_dialogs[self.current_dialog_id]):
self.current_dialogue_letter_id -= 1 self.current_dialogue_letter_id -= 1
print(self.get_current_dialog_sentence())

View file

@ -145,8 +145,13 @@ class Renderer:
self.window.blit(resized_box, (0, display.get_window_size()[1] - resized_box.get_height())) self.window.blit(resized_box, (0, display.get_window_size()[1] - resized_box.get_height()))
# Rend le texte # Rend le texte
text_font = font.SysFont("Arial", display.get_window_size()[0]//20)
rendered_text = text_font.render(self.engine.dialogs_manager.get_current_dialog_sentence(), True, (0, 0, 0)) # On récupère le texte
sentence = self.engine.dialogs_manager.get_current_dialog_sentence()
text_font = font.SysFont("Arial", display.get_window_size()[0]//30)
print(text_font.size(sentence))
rendered_text = text_font.render(sentence, True, (0, 0, 0))
self.window.blit(rendered_text, (display.get_window_size()[0]/30, display.get_window_size()[1] - resized_box.get_height()+display.get_window_size()[0]/30)) self.window.blit(rendered_text, (display.get_window_size()[0]/30, display.get_window_size()[1] - resized_box.get_height()+display.get_window_size()[0]/30))
def render_debug_area(self, rendered_surface: surface.Surface): def render_debug_area(self, rendered_surface: surface.Surface):

View file

@ -22,7 +22,7 @@ class Game(Engine):
self.game_state = GameState.NORMAL self.game_state = GameState.NORMAL
self.event_sheduler.register_area((64, 64, 32, 32), lambda _: self.dialogs_manager.start_dialog("test"), ["player"]) self.event_sheduler.register_area((64, 64, 32, 32), lambda _: self.dialogs_manager.start_dialog("test3"), ["player"])
self.renderer.dialogs_box = pygame.image.load("assets/textures/GUI/dialogs_box.png").convert_alpha() self.renderer.dialogs_box = pygame.image.load("assets/textures/GUI/dialogs_box.png").convert_alpha()