forked from UNN/2026-rff_mp
27 lines
847 B
Python
27 lines
847 B
Python
import os
|
|
from observer.observer import Observer
|
|
|
|
|
|
class ConsoleView(Observer):
|
|
def update(self, event):
|
|
if isinstance(event, str):
|
|
print(f"[EVENT] {event}")
|
|
elif isinstance(event, dict):
|
|
event_type = event.get("type", "unknown")
|
|
if event_type == "search_finished":
|
|
stats = event.get("stats")
|
|
print(f"[EVENT] search finished: {stats}")
|
|
else:
|
|
print(f"[EVENT] {event_type}: {event}")
|
|
else:
|
|
print("[EVENT] unknown")
|
|
|
|
def clear(self):
|
|
os.system("cls" if os.name == "nt" else "clear")
|
|
|
|
def render(self, maze, player_position=None, path=None, clear_screen=False):
|
|
if clear_screen:
|
|
self.clear()
|
|
print(maze.render(player_position=player_position, path=path))
|
|
print()
|