コード例 #1
0
ファイル: testing_script.py プロジェクト: tomkecy/Stratego
def run_ai_vs_ai(ai_players, board_size, out_file, first_search_depth,
                 second_search_depth, start_player):
    engine = game_engine.GameEngine(board_size)
    current_player = start_player
    times = [0, 0]
    while engine.is_game_over():
        print("----------\nPlayer 1 score: %s\nPlayer 2 score %s\n----------" %
              engine.get_player_points())
        print_board(engine, board_size)
        game_state = engine.get_game_state()

        start = timer()
        player_move = ai_players[current_player].make_move(game_state)
        end = timer()
        times[current_player] = times[current_player] + (end - start)
        engine.make_move(player_move)

        current_player = (current_player + 1) % 2
    points = engine.get_player_points()
    print("----------\nPlayer 1 score: %s\nPlayer 2 score %s\n----------" %
          points)
    print_board(engine, board_size)
    print_end_game_summary(engine)
    out_file.write('%s,%s,%s,%s,%s,%s\n' %
                   (first_search_depth, second_search_depth, points[0],
                    points[1], times[0], times[1]))
    return points
コード例 #2
0
    def __init__(self):
        colorama.init()
        self.INPUT_RUN_PLAYER_VS_AI = 1
        self.INPUT_RUN_AI_VS_AI = 2
        self.INPUT_CHANGE_BOARD_SIZE = 3
        self.INPUT_EXIT = 4
        self._heuristic = heuristic_evaluator.MaxPointDiffHeuristic()
        self._board_size = 8

        self.engine = game_engine.GameEngine(self._board_size)
        self._ai_players = []

        self._current_player = 1
コード例 #3
0
ファイル: game_window.py プロジェクト: Gvex95/bubble-bobble
    def __init__(self, list_of_names):
        super().__init__()

        # p1 = green
        # p2 = blue

        # Create map and game engine       
        self.map = map.Map()
        self.gameEngine = game_engine.GameEngine(self.map)
        

        # Add key notifier thread for player movment
        self.key_notifier = key_notifier.KeyNotifier()
        self.key_notifier.key_signal.connect(self.keyPressListener)
        self.key_notifier.start()

        # Add threads
        self.player1_move_thread = None
        self.player2_move_thread = None
        self.player1_shoot_thread = None
        self.player2_shoot_thread = None
        self.enemies_thread = None

        # Create and sutup players
        self.player1 = player.Player(list_of_names[0], 1)
        self.player2 = player.Player(list_of_names[1], 2)
        self.player1.setupPlayer(P1_INIT_COORDINATE, self.gameEngine)
        self.player2.setupPlayer(P2_INIT_COORDINATE, self.gameEngine)

        self.running = True

        # Setup initial level number and number of enemies
        self.level = 1
        self.numOfEnemies = 1
        self.thinkTime = 0.6

        # Move player to their initial positions
        self.gameEngine.move(self.player1.initCoordinate, self.player1)
        self.gameEngine.move(self.player2.initCoordinate, self.player2)

        self.init_ui()
コード例 #4
0
ファイル: main.py プロジェクト: llf-1996/learngit
# coding:utf-8
import game_engine

engine = game_engine.GameEngine()
engine.start()
コード例 #5
0
 def _initialise_game(self):
     self.engine = self.engine = game_engine.GameEngine(self._board_size)
     self._current_player = 1
コード例 #6
0
ファイル: game.py プロジェクト: Magorx/turn_based_test
def main():
    engine = game_engine.GameEngine()
    engine.LoadWorld(10, 10, 'world')
    engine.add_player('Shaitan', 0)
    engine.add_player('Quarzon', 1)
    engine.StartWorld()