landfill #22
@ -4,4 +4,5 @@ class AgentActionType (Enum):
|
||||
MOVE_FORWARD = 0
|
||||
TURN_LEFT = 1
|
||||
TURN_RIGHT = 2
|
||||
EMPTY_CAN = 3
|
||||
UNKNOWN = None
|
@ -14,6 +14,7 @@ class GameContext:
|
||||
city = None
|
||||
grid: Dict[Tuple[int, int], GridCellType] = {}
|
||||
dust_car = None
|
||||
landfill = None
|
||||
|
||||
def __init__(self) -> None:
|
||||
self._init_grid()
|
||||
|
@ -5,4 +5,5 @@ class GridCellType(Enum):
|
||||
STREET_VERTICAL = 1
|
||||
STREET_HORIZONTAL = 2
|
||||
GARBAGE_CAN = 3
|
||||
VISITED_GARBAGE_CAN = 4
|
||||
VISITED_GARBAGE_CAN = 4
|
||||
LANDFILL = 5
|
BIN
imgs/landfill.png
Normal file
BIN
imgs/landfill.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 857 B |
39
landfill.py
Normal file
39
landfill.py
Normal file
@ -0,0 +1,39 @@
|
||||
from typing import Tuple
|
||||
from gameContext import GameContext
|
||||
from garbage import RecognizedGarbage
|
||||
from gridCellType import GridCellType
|
||||
|
||||
class Landfill:
|
||||
position: Tuple[int, int] = []
|
||||
paper: list[RecognizedGarbage]
|
||||
plastic_and_metal: list[RecognizedGarbage] = []
|
||||
glass: list[RecognizedGarbage] = []
|
||||
bio: list[RecognizedGarbage] = []
|
||||
mixed: list[RecognizedGarbage] = []
|
||||
|
||||
def __init__(self, position: Tuple[int, int]) -> None:
|
||||
self.position = position
|
||||
|
||||
def add_paper(self, paper: list[RecognizedGarbage]) -> None:
|
||||
for p in paper:
|
||||
self.paper.append(p)
|
||||
|
||||
def add_plastic_and_metal(self, plastic_and_metal: list[RecognizedGarbage]) -> None:
|
||||
for p in plastic_and_metal:
|
||||
self.plastic_and_metal.append(p)
|
||||
|
||||
def add_glass(self, glass: list[RecognizedGarbage]) -> None:
|
||||
for g in glass:
|
||||
self.glass.append(g)
|
||||
|
||||
def add_paper(self, bio: list[RecognizedGarbage]) -> None:
|
||||
for b in bio:
|
||||
self.bio.append(b)
|
||||
|
||||
def add_mixed(self, mixed: list[RecognizedGarbage]) -> None:
|
||||
for m in mixed:
|
||||
self.mixed.append(m)
|
||||
|
||||
def render(self, game_context: GameContext) -> None:
|
||||
game_context.render_in_cell(self.position, 'imgs/landfill.png')
|
||||
game_context.grid[self.position] = GridCellType.LANDFILL
|
@ -39,7 +39,7 @@ def move_dust_car(actions: list[AgentActionType], game_context: GameContext) ->
|
||||
elif game_context.grid[street_position] == GridCellType.STREET_VERTICAL:
|
||||
game_context.render_in_cell(street_position, "imgs/street_vertical.png")
|
||||
pygame.display.update()
|
||||
time.sleep(0.5)
|
||||
time.sleep(0.15)
|
||||
|
||||
|
||||
|
||||
|
10
startup.py
10
startup.py
@ -6,6 +6,7 @@ from typing import Tuple, List
|
||||
from street import Street, StreetType
|
||||
from garbageTruck import GarbageTruck
|
||||
from garbageCan import GarbageCan
|
||||
from landfill import Landfill
|
||||
|
||||
|
||||
def startup(game_context: GameContext):
|
||||
@ -15,6 +16,7 @@ def startup(game_context: GameContext):
|
||||
car = create_dust_car(game_context)
|
||||
car.render(game_context)
|
||||
game_context.dust_car = car
|
||||
_create_landfill(game_context)
|
||||
|
||||
def create_dust_car(game_context: GameContext) -> GarbageTruck:
|
||||
return GarbageTruck((3, 3))
|
||||
@ -57,4 +59,10 @@ def create_trashcans() -> List[GarbageCan]:
|
||||
trashcans.append(GarbageCan((17, 9)))
|
||||
trashcans.append(GarbageCan((24, 17)))
|
||||
trashcans.append(GarbageCan((26, 4)))
|
||||
return trashcans
|
||||
return trashcans
|
||||
|
||||
def _create_landfill(game_context: GameContext) -> None:
|
||||
landfil_position = (23,24)
|
||||
landfill = Landfill(landfil_position)
|
||||
game_context.landfill = landfill
|
||||
landfill.render(game_context)
|
Loading…
Reference in New Issue
Block a user