Mods
This commit is contained in:
		| @@ -55,6 +55,13 @@ class Ant: | ||||
|     def get_score(self) -> int: | ||||
|         return self.triumph - self.hits | ||||
|  | ||||
|     def tooltip(self) -> str: | ||||
|         tooltip = "" | ||||
|         tooltip += f"Updated: {Utils.to_date(self.updated)}" | ||||
|         tooltip += f"\nCreated: {Utils.to_date(self.created)}" | ||||
|         tooltip += f"\nTriumph: {self.triumph} | Hits: {self.hits}" | ||||
|         return tooltip | ||||
|  | ||||
|  | ||||
| class Ants: | ||||
|     ants: ClassVar[list[Ant]] = [] | ||||
| @@ -93,9 +100,6 @@ class Ants: | ||||
|     def terminate() -> None: | ||||
|         from .game import Game | ||||
|  | ||||
|         if Ants.empty(): | ||||
|             return | ||||
|  | ||||
|         ant = Ants.random_ant() | ||||
|  | ||||
|         if not ant: | ||||
| @@ -121,9 +125,6 @@ class Ants: | ||||
|  | ||||
|     @staticmethod | ||||
|     def random_ant(ignore: list[Ant] | None = None) -> Ant | None: | ||||
|         if Ants.empty(): | ||||
|             return None | ||||
|  | ||||
|         if ignore: | ||||
|             ants = [a for a in Ants.ants if a not in ignore] | ||||
|         else: | ||||
| @@ -139,15 +140,8 @@ class Ants: | ||||
|     def save() -> None: | ||||
|         Storage.save_ants(Ants.ants) | ||||
|  | ||||
|     @staticmethod | ||||
|     def empty() -> bool: | ||||
|         return len(Ants.ants) == 0 | ||||
|  | ||||
|     @staticmethod | ||||
|     def get_next() -> Ant | None: | ||||
|         if Ants.empty(): | ||||
|             return None | ||||
|  | ||||
|         now = Utils.now() | ||||
|         ages = [(now - ant.updated) for ant in Ants.ants] | ||||
|  | ||||
| @@ -166,9 +160,6 @@ class Ants: | ||||
|  | ||||
|     @staticmethod | ||||
|     def get_current() -> Ant | None: | ||||
|         if Ants.empty(): | ||||
|             return None | ||||
|  | ||||
|         return max(Ants.ants, key=lambda ant: ant.updated) | ||||
|  | ||||
|     @staticmethod | ||||
| @@ -216,9 +207,6 @@ class Ants: | ||||
|  | ||||
|     @staticmethod | ||||
|     def get_top_ant() -> tuple[Ant, int] | None: | ||||
|         if Ants.empty(): | ||||
|             return None | ||||
|  | ||||
|         top = None | ||||
|         top_score = 0 | ||||
|  | ||||
| @@ -308,14 +296,18 @@ class Ants: | ||||
|         from .game import Game | ||||
|  | ||||
|         image_path = Config.hatched_image_path | ||||
|         Game.add_message("Hatched", f"{ant.name} is born", image_path) | ||||
|         Game.add_message( | ||||
|             "Hatched", f"{ant.name} is born", image_path, tooltip=ant.tooltip() | ||||
|         ) | ||||
|  | ||||
|     @staticmethod | ||||
|     def announce_terminate(ant: Ant) -> None: | ||||
|         from .game import Game | ||||
|  | ||||
|         image_path = Config.terminated_image_path | ||||
|         Game.add_message("Terminated", f"{ant.name} is gone", image_path) | ||||
|         Game.add_message( | ||||
|             "Terminated", f"{ant.name} is gone", image_path, tooltip=ant.tooltip() | ||||
|         ) | ||||
|  | ||||
|     @staticmethod | ||||
|     def clear() -> None: | ||||
|   | ||||
| @@ -47,10 +47,7 @@ class Game: | ||||
|         elif ant.method == "travel": | ||||
|             status = f"Traveling to {status}" | ||||
|  | ||||
|         tooltip = "" | ||||
|         tooltip += f"Updated: {Utils.to_date(ant.updated)}" | ||||
|         tooltip += f"\nCreated: {Utils.to_date(ant.created)}" | ||||
|         tooltip += f"\nTriumph: {ant.triumph} | Hits: {ant.hits}" | ||||
|         tooltip = ant.tooltip() | ||||
|         image_label = Game.get_image(Config.status_image_path, color, tooltip=tooltip) | ||||
|         right_container = Game.make_right_container(ant.name, status) | ||||
|  | ||||
| @@ -65,9 +62,10 @@ class Game: | ||||
|         message: str, | ||||
|         image_path: Path, | ||||
|         color: tuple[int, int, int] | None = None, | ||||
|         tooltip: str = "", | ||||
|     ) -> None: | ||||
|         container = QHBoxLayout() | ||||
|         image_label = Game.get_image(image_path, color) | ||||
|         image_label = Game.get_image(image_path, color, tooltip=tooltip) | ||||
|         right_container = Game.make_right_container(title, message) | ||||
|  | ||||
|         container.addWidget(image_label) | ||||
| @@ -158,9 +156,6 @@ class Game: | ||||
|  | ||||
|     @staticmethod | ||||
|     def get_status() -> None: | ||||
|         if Ants.empty(): | ||||
|             return | ||||
|  | ||||
|         ant = Ants.get_next() | ||||
|  | ||||
|         if not ant: | ||||
|   | ||||
| @@ -180,7 +180,7 @@ class Window: | ||||
|         root = QWidget() | ||||
|         container = QHBoxLayout() | ||||
|         btn_restart = QPushButton("Restart") | ||||
|         btn_restart.setToolTip(f"Restart with a new set of ants") | ||||
|         btn_restart.setToolTip("Restart with a new set of ants") | ||||
|         btn_restart.clicked.connect(Game.restart) | ||||
|  | ||||
|         Window.speed = QComboBox() | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Auric Vente
					Auric Vente