Player is now a parameter og engines classes

This commit is contained in:
Yorick Barbanneau 2023-12-16 23:54:56 +01:00
parent 66b10f4deb
commit c8447b7a6b
2 changed files with 6 additions and 3 deletions

View file

@ -1,8 +1,9 @@
import random, math import random, math
class PlayerEngine: class PlayerEngine:
def __init__(self, logger, heuristic, options: dict = {}): def __init__(self, player, logger, heuristic, options: dict = {}):
# init logger do display informations # init logger do display informations
self.player = player
self.logger = logger self.logger = logger
self.heuristic = heuristic self.heuristic = heuristic
self.options = options self.options = options
@ -14,7 +15,7 @@ class PlayerEngine:
def get_move(self, board): def get_move(self, board):
self.logger.info("engine: {} - player:{}".format( self.logger.info("engine: {} - player:{}".format(
self.__class__.__name__, self.__class__.__name__,
self.get_player_name(board._nextPlayer) self.get_player_name(self.player)
)) ))
@staticmethod @staticmethod
@ -33,7 +34,7 @@ class HumanPlayerEngine(PlayerEngine):
move = None move = None
while move is None: while move is None:
user_input = input("Please enter player {} move, `print` to display board and `help` possible moves : ".format( user_input = input("Please enter player {} move, `print` to display board and `help` possible moves : ".format(
self.get_player_name(board._nextPlayer) self.get_player_name(self.player)
)) ))
move = self.validate_input(user_input, board) move = self.validate_input(user_input, board)
return move return move

View file

@ -108,6 +108,7 @@ if __name__ == '__main__':
)) ))
logger.debug("Weight value {}".format( args.weight )) logger.debug("Weight value {}".format( args.weight ))
wplayer = player_engines[args.white_engine]( wplayer = player_engines[args.white_engine](
game._WHITE,
logger, logger,
heuristic_engine[args.white_heuristic_engine]( heuristic_engine[args.white_heuristic_engine](
logger, { logger, {
@ -119,6 +120,7 @@ if __name__ == '__main__':
} }
) )
bplayer = player_engines[args.black_engine]( bplayer = player_engines[args.black_engine](
game._BLACK,
logger, logger,
heuristic_engine[args.black_heuristic_engine]( heuristic_engine[args.black_heuristic_engine](
logger, { logger, {