import random from entity.Piece import Piece from util.ConfigurationManager import ConfigurationManager """ TODO Add link that goes through random piece generation """ class PieceGenerator: __pieces = [] @classmethod def get_piece(cls, position): if len(cls.__pieces) == 0: for _ in range(7): cls.__pieces.append(Piece(cls.__get_piece_shape(), position, cls.__get_piece_color())) return cls.__pieces.pop() def __get_piece_shape(): random_number = random.randint(0, 6) if random_number == 0: return Piece.I_SHAPE if random_number == 1: return Piece.J_SHAPE if random_number == 2: return Piece.L_SHAPE if random_number == 3: return Piece.O_SHAPE if random_number == 4: return Piece.S_SHAPE if random_number == 5: return Piece.T_SHAPE if random_number == 6: return Piece.Z_SHAPE def __get_piece_color(): random_number = random.randint(1, 3) return ConfigurationManager.configuration["color"]["base-" + str(random_number)]