Skip to content
Snippets Groups Projects
main.py 1.31 KiB
import sys
from pathlib import Path

import numpy as np
import pygame

from overcooked_simulator.game_items import Tomato, Plate
from overcooked_simulator.player import Player
from overcooked_simulator.pygame_gui.pygame_gui import PyGameGUI
from overcooked_simulator.simulation_runner import Simulator


def main():
    simulator = Simulator(Path("overcooked_simulator/layouts/basic.layout"), 600)
    player_one_name = "p1"
    player_two_name = "p2"
    simulator.register_player(Player(player_one_name, np.array([100, 200])))
    simulator.register_player(Player(player_two_name, np.array([200, 100])))

    simulator.env.counters[3].occupied_by = Tomato()
    simulator.env.counters[4].occupied_by = Tomato()
    simulator.env.counters[6].occupied_by = Plate()
    simulator.env.counters[7].occupied_by = Plate()

    # TODO maybe read the player names and keyboard keys from config file?
    keys1 = [
        pygame.K_LEFT,
        pygame.K_RIGHT,
        pygame.K_UP,
        pygame.K_DOWN,
        pygame.K_SPACE,
        pygame.K_i,
    ]
    keys2 = [pygame.K_a, pygame.K_d, pygame.K_w, pygame.K_s, pygame.K_f, pygame.K_e]
    gui = PyGameGUI(simulator, [player_one_name, player_two_name], [keys1, keys2])

    simulator.start()
    gui.start_pygame()

    simulator.stop()
    sys.exit()


if __name__ == "__main__":
    main()