main #22

Merged
yannis merged 2 commits from main into menu_manager 2024-01-07 09:04:26 +00:00
3 changed files with 10 additions and 4 deletions

View file

@ -36,6 +36,7 @@ class DialogsManager:
def next_dialog(self): def next_dialog(self):
"""Passe au dialogue suivant. Appelle le callback si le dialogue est fini.""" """Passe au dialogue suivant. Appelle le callback si le dialogue est fini."""
self.current_dialog_id += 1 self.current_dialog_id += 1
self.current_dialogue_letter_id = 0
self.writing_dialog = True self.writing_dialog = True
if self.current_dialog_id >= len(self.current_dialogs): # Le dialogue est fini. if self.current_dialog_id >= len(self.current_dialogs): # Le dialogue est fini.
self.current_dialogs = [] self.current_dialogs = []
@ -51,7 +52,7 @@ class DialogsManager:
# Si un dialogue n'est pas déja lancé, on lance le dialogue au nom donné # Si un dialogue n'est pas déja lancé, on lance le dialogue au nom donné
if not self.reading_dialog: if not self.reading_dialog:
self.event_handler.register_button_area((0, 0, 1, 1), self.next_signal, "next_dialog", 0) self.event_handler.register_button_area((0, 0, 1, 1), self.next_signal, "next_dialog", 2)
self.current_dialogs = self.dialogs[name] self.current_dialogs = self.dialogs[name]
self.current_dialog_id = 0 self.current_dialog_id = 0
@ -84,6 +85,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
self.writing_dialog = False self.writing_dialog = False
#print(self.writing_dialog, self.reading_dialog)

View file

@ -29,6 +29,10 @@ class EventHandler:
return (rect[0]*window_size[1] < point[0] < rect[0]*window_size[1] + rect[2]*window_size[1] and return (rect[0]*window_size[1] < point[0] < rect[0]*window_size[1] + rect[2]*window_size[1] and
rect[1]*window_size[1] < point[1] < rect[1]*window_size[1] + rect[3]*window_size[1]) rect[1]*window_size[1] < point[1] < rect[1]*window_size[1] + rect[3]*window_size[1])
elif is_window_relative == 2:
return (rect[0]*window_size[0] < point[0] < rect[0]*window_size[0] + rect[2]*window_size[0] and
rect[1]*window_size[1] < point[1] < rect[1]*window_size[1] + rect[3]*window_size[1])
return rect[0] < point[0] < rect[0] + rect[2] and rect[1] < point[1] < rect[1] + rect[3] return rect[0] < point[0] < rect[0] + rect[2] and rect[1] < point[1] < rect[1] + rect[3]
def register_button_area(self, rect: tuple[float | int, float | int, float | int, float | int], def register_button_area(self, rect: tuple[float | int, float | int, float | int, float | int],

View file

@ -138,6 +138,10 @@ class Renderer:
draw.rect(self.window, (255, 255, 0), draw.rect(self.window, (255, 255, 0),
(area[0][0] * window_size[1], area[0][1] * window_size[1], (area[0][0] * window_size[1], area[0][1] * window_size[1],
area[0][2] * window_size[1], area[0][3] * window_size[1]), width=1) area[0][2] * window_size[1], area[0][3] * window_size[1]), width=1)
elif area[2] == 2:
draw.rect(self.window, (255, 255, 0),
(area[0][0] * window_size[0], area[0][1] * window_size[1],
area[0][2] * window_size[0], area[0][3] * window_size[1]), width=1)
else: else:
draw.rect(self.window, (255, 255, 0), draw.rect(self.window, (255, 255, 0),
area[0], width=1) area[0], width=1)