From 368f8db081c44b10ce6d53fbb52b1d343b3a7285 Mon Sep 17 00:00:00 2001 From: fheinrich <fheinrich@techfak.uni-bielefeld.de> Date: Wed, 13 Dec 2023 15:54:34 +0100 Subject: [PATCH] Changed dispenser counter --- overcooked_simulator/counters.py | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/overcooked_simulator/counters.py b/overcooked_simulator/counters.py index d228137b..f39b5260 100644 --- a/overcooked_simulator/counters.py +++ b/overcooked_simulator/counters.py @@ -16,7 +16,9 @@ from overcooked_simulator.game_items import ( Tomato, Pot, CookingEquipment, + Soup, ) +from overcooked_simulator.game_items import item_loopkup class Counter: @@ -128,10 +130,8 @@ class ServingWindow(Counter): def can_score(self, item): if isinstance(item, Plate): - if isinstance(item.holds, ProgressibleItem): + if isinstance(item.holds, Soup): return item.holds.finished - else: - return bool(item.holds) def can_drop_off(self, item: Item) -> bool: return self.can_score(item) @@ -186,12 +186,16 @@ class PlateReturn(Counter): ) or self.occupied_by[-1].can_combine(item) -class TomatoDispenser(Counter): - def __init__(self, pos): +class Dispenser(Counter): + def __init__(self, pos, dispensing): + self.dispensing = dispensing super().__init__(pos) def pick_up(self, on_hands: bool = True): - return Tomato() + return CuttableItem( + name=self.dispensing, + finished_name=item_loopkup[self.dispensing]["finished_name"], + ) def drop_off(self, item: Item) -> Item | None: return None @@ -199,6 +203,9 @@ class TomatoDispenser(Counter): def can_drop_off(self, item: Item) -> bool: return False + def __repr__(self): + return f"{self.dispensing}Dispenser" + class Trash(Counter): def pick_up(self, on_hands: bool = True): -- GitLab